[openlayers] 34/41: Imported Upstream version 2.13+ds1

Bas Couwenberg sebastic at xs4all.nl
Fri Dec 26 02:41:47 UTC 2014


This is an automated email from the git hooks/post-receive script.

sebastic-guest pushed a commit to branch master
in repository openlayers.

commit e4b03a7e45971ebcc5436d05eda2701e7424fb96
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Fri Dec 26 03:03:47 2014 +0100

    Imported Upstream version 2.13+ds1
---
 apidoc_config/Data/ClassHierarchy.nd               | Bin 35570 -> 37279 bytes
 apidoc_config/Data/ConfigFileInfo.nd               | Bin 26 -> 26 bytes
 apidoc_config/Data/FileInfo.nd                     | 634 ++++++++---------
 apidoc_config/Data/ImageFileInfo.nd                | Bin 219 -> 219 bytes
 apidoc_config/Data/ImageReferenceTable.nd          | Bin 638 -> 439 bytes
 apidoc_config/Data/IndexInfo.nd                    | Bin 267 -> 267 bytes
 apidoc_config/Data/PreviousMenuState.nd            | Bin 26101 -> 27151 bytes
 apidoc_config/Data/PreviousSettings.nd             | Bin 117 -> 117 bytes
 apidoc_config/Data/SymbolTable.nd                  | Bin 602851 -> 632256 bytes
 apidoc_config/Languages.txt                        |   2 +-
 apidoc_config/Menu.txt                             | 198 +++---
 apidoc_config/Topics.txt                           |   2 +-
 build/build.py                                     |  39 +-
 build/license.txt                                  |   2 +-
 build/mobile.cfg                                   |   1 +
 build/tests.cfg                                    |   1 +
 doc/apidocs/files/OpenLayers-js.html               |  10 +-
 doc/apidocs/files/OpenLayers/Animation-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/BaseTypes-js.html     |  10 +-
 .../files/OpenLayers/BaseTypes/Bounds-js.html      |  69 +-
 .../files/OpenLayers/BaseTypes/Class-js.html       |   8 +-
 .../files/OpenLayers/BaseTypes/Date-js.html        |  12 +-
 .../files/OpenLayers/BaseTypes/Element-js.html     |   6 +-
 .../files/OpenLayers/BaseTypes/LonLat-js.html      |   6 +-
 .../files/OpenLayers/BaseTypes/Pixel-js.html       |   6 +-
 .../files/OpenLayers/BaseTypes/Size-js.html        |   6 +-
 doc/apidocs/files/OpenLayers/Console-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Control-js.html       |   6 +-
 .../files/OpenLayers/Control/ArgParser-js.html     |   6 +-
 .../files/OpenLayers/Control/Attribution-js.html   |  14 +-
 .../files/OpenLayers/Control/Button-js.html        |   6 +-
 .../files/OpenLayers/Control/CacheRead-js.html     |   6 +-
 .../files/OpenLayers/Control/CacheWrite-js.html    |   6 +-
 .../files/OpenLayers/Control/DragFeature-js.html   |   6 +-
 .../files/OpenLayers/Control/DragPan-js.html       |   8 +-
 .../files/OpenLayers/Control/DrawFeature-js.html   |   6 +-
 .../OpenLayers/Control/EditingToolbar-js.html      |   6 +-
 .../files/OpenLayers/Control/Geolocate-js.html     |   6 +-
 .../files/OpenLayers/Control/GetFeature-js.html    |   6 +-
 .../files/OpenLayers/Control/Graticule-js.html     |   6 +-
 .../OpenLayers/Control/KeyboardDefaults-js.html    |   6 +-
 .../files/OpenLayers/Control/LayerSwitcher-js.html |  12 +-
 .../files/OpenLayers/Control/Measure-js.html       |  12 +-
 .../files/OpenLayers/Control/ModifyFeature-js.html |  12 +-
 .../files/OpenLayers/Control/MousePosition-js.html |  25 +-
 .../files/OpenLayers/Control/NavToolbar-js.html    |   6 +-
 .../files/OpenLayers/Control/Navigation-js.html    |   6 +-
 .../OpenLayers/Control/NavigationHistory-js.html   |   6 +-
 .../files/OpenLayers/Control/OverviewMap-js.html   |  12 +-
 doc/apidocs/files/OpenLayers/Control/Pan-js.html   |   6 +-
 .../files/OpenLayers/Control/PanPanel-js.html      |   6 +-
 .../files/OpenLayers/Control/PanZoom-js.html       |   6 +-
 .../files/OpenLayers/Control/PanZoomBar-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Control/Panel-js.html |   6 +-
 .../files/OpenLayers/Control/Permalink-js.html     |   6 +-
 .../files/OpenLayers/Control/PinchZoom-js.html     |  20 +-
 .../files/OpenLayers/Control/SLDSelect-js.html     |  14 +-
 doc/apidocs/files/OpenLayers/Control/Scale-js.html |   6 +-
 .../files/OpenLayers/Control/ScaleLine-js.html     |   6 +-
 .../files/OpenLayers/Control/SelectFeature-js.html |   6 +-
 .../files/OpenLayers/Control/Snapping-js.html      |   8 +-
 doc/apidocs/files/OpenLayers/Control/Split-js.html |   6 +-
 .../OpenLayers/Control/TouchNavigation-js.html     |   8 +-
 .../OpenLayers/Control/TransformFeature-js.html    |   6 +-
 .../files/OpenLayers/Control/UTFGrid-js.html       |   6 +-
 .../OpenLayers/Control/WMSGetFeatureInfo-js.html   |  32 +-
 .../OpenLayers/Control/WMTSGetFeatureInfo-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Control/Zoom-js.html  |   8 +-
 .../files/OpenLayers/Control/ZoomBox-js.html       |  12 +-
 .../files/OpenLayers/Control/ZoomIn-js.html        |   6 +-
 .../files/OpenLayers/Control/ZoomOut-js.html       |   6 +-
 .../files/OpenLayers/Control/ZoomPanel-js.html     |   6 +-
 .../OpenLayers/Control/ZoomToMaxExtent-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Events-js.html        |  16 +-
 .../files/OpenLayers/Events/buttonclick-js.html    |   6 +-
 .../files/OpenLayers/Events/featureclick-js.html   |  53 ++
 doc/apidocs/files/OpenLayers/Feature-js.html       |  14 +-
 .../files/OpenLayers/Feature/Vector-js.html        |   8 +-
 doc/apidocs/files/OpenLayers/Filter-js.html        |   6 +-
 .../files/OpenLayers/Filter/Comparison-js.html     |   8 +-
 .../files/OpenLayers/Filter/FeatureId-js.html      |   6 +-
 .../files/OpenLayers/Filter/Function-js.html       |   6 +-
 .../files/OpenLayers/Filter/Logical-js.html        |   6 +-
 .../files/OpenLayers/Filter/Spatial-js.html        |   6 +-
 doc/apidocs/files/OpenLayers/Format-js.html        |   6 +-
 doc/apidocs/files/OpenLayers/Format/ArcXML-js.html |  10 +-
 .../OpenLayers/Format/ArcXML/Features-js.html      |  12 +-
 doc/apidocs/files/OpenLayers/Format/Atom-js.html   |  12 +-
 doc/apidocs/files/OpenLayers/Format/CQL-js.html    |   6 +-
 .../files/OpenLayers/Format/CSWGetDomain-js.html   |   6 +-
 .../OpenLayers/Format/CSWGetDomain/v2_0_2-js.html  |  10 +-
 .../files/OpenLayers/Format/CSWGetRecords-js.html  |   6 +-
 .../OpenLayers/Format/CSWGetRecords/v2_0_2-js.html |  10 +-
 .../files/OpenLayers/Format/Context-js.html        |   6 +-
 .../OpenLayers/Format/EncodedPolyline-js.html      |  73 ++
 doc/apidocs/files/OpenLayers/Format/Filter-js.html |  10 +-
 .../files/OpenLayers/Format/Filter/v1-js.html      |  16 +-
 .../files/OpenLayers/Format/Filter/v1_0_0-js.html  |   8 +-
 .../files/OpenLayers/Format/Filter/v1_1_0-js.html  |   8 +-
 doc/apidocs/files/OpenLayers/Format/GML-js.html    |  14 +-
 .../files/OpenLayers/Format/GML/Base-js.html       |  14 +-
 doc/apidocs/files/OpenLayers/Format/GML/v2-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Format/GML/v3-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Format/GPX-js.html    |  14 +-
 .../files/OpenLayers/Format/GeoJSON-js.html        |   6 +-
 doc/apidocs/files/OpenLayers/Format/GeoRSS-js.html |  14 +-
 doc/apidocs/files/OpenLayers/Format/JSON-js.html   |   6 +-
 doc/apidocs/files/OpenLayers/Format/KML-js.html    |  16 +-
 .../OpenLayers/Format/OGCExceptionReport-js.html   |  10 +-
 doc/apidocs/files/OpenLayers/Format/OSM-js.html    |  12 +-
 .../files/OpenLayers/Format/OWSCommon-js.html      |   6 +-
 .../files/OpenLayers/Format/OWSCommon/v1-js.html   |  10 +-
 .../OpenLayers/Format/OWSCommon/v1_0_0-js.html     |   6 +-
 .../OpenLayers/Format/OWSCommon/v1_1_0-js.html     |   6 +-
 .../files/OpenLayers/Format/OWSContext-js.html     |   6 +-
 .../OpenLayers/Format/OWSContext/v0_3_1-js.html    |  12 +-
 .../OpenLayers/Format/QueryStringFilter-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Format/SLD-js.html    |  10 +-
 doc/apidocs/files/OpenLayers/Format/SLD/v1-js.html |   8 +-
 .../files/OpenLayers/Format/SLD/v1_0_0-js.html     |   8 +-
 .../OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html |   6 +-
 .../OpenLayers/Format/SOSCapabilities-js.html      |   6 +-
 .../Format/SOSCapabilities/v1_0_0-js.html          |   6 +-
 .../Format/SOSGetFeatureOfInterest-js.html         |  12 +-
 .../OpenLayers/Format/SOSGetObservation-js.html    |  10 +-
 doc/apidocs/files/OpenLayers/Format/Text-js.html   |   6 +-
 .../OpenLayers/Format/WCSCapabilities-js.html      |  51 ++
 .../OpenLayers/Format/WCSCapabilities/v1-js.html   |  43 ++
 .../Format/WCSCapabilities/v1_0_0-js.html          |  43 ++
 .../Format/WCSCapabilities/v1_1_0-js.html          |  47 ++
 .../files/OpenLayers/Format/WCSGetCoverage-js.html |  10 +-
 doc/apidocs/files/OpenLayers/Format/WFS-js.html    |   8 +-
 .../OpenLayers/Format/WFSCapabilities-js.html      |  10 +-
 .../OpenLayers/Format/WFSCapabilities/v1-js.html   |  14 +-
 .../Format/WFSCapabilities/v1_0_0-js.html          |   6 +-
 .../Format/WFSCapabilities/v1_1_0-js.html          |   6 +-
 .../Format/WFSDescribeFeatureType-js.html          |  10 +-
 doc/apidocs/files/OpenLayers/Format/WFST-js.html   |   6 +-
 .../files/OpenLayers/Format/WFST/v1-js.html        |  12 +-
 .../files/OpenLayers/Format/WFST/v1_0_0-js.html    |   6 +-
 .../files/OpenLayers/Format/WFST/v1_1_0-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Format/WKT-js.html    |  18 +-
 doc/apidocs/files/OpenLayers/Format/WMC-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Format/WMC/v1-js.html |  12 +-
 .../files/OpenLayers/Format/WMC/v1_0_0-js.html     |   6 +-
 .../files/OpenLayers/Format/WMC/v1_1_0-js.html     |   6 +-
 .../OpenLayers/Format/WMSCapabilities-js.html      |   6 +-
 .../OpenLayers/Format/WMSCapabilities/v1-js.html   |  10 +-
 .../OpenLayers/Format/WMSCapabilities/v1_1-js.html |   6 +-
 .../Format/WMSCapabilities/v1_1_0-js.html          |   6 +-
 .../Format/WMSCapabilities/v1_1_1-js.html          |  10 +-
 .../Format/WMSCapabilities/v1_1_1_WMSC-js.html     |   6 +-
 .../OpenLayers/Format/WMSCapabilities/v1_3-js.html |   6 +-
 .../Format/WMSCapabilities/v1_3_0-js.html          |   6 +-
 .../OpenLayers/Format/WMSDescribeLayer-js.html     |   6 +-
 .../Format/WMSDescribeLayer/v1_1-js.html           |  18 +-
 .../OpenLayers/Format/WMSGetFeatureInfo-js.html    |  12 +-
 .../OpenLayers/Format/WMTSCapabilities-js.html     |   8 +-
 .../Format/WMTSCapabilities/v1_0_0-js.html         |   6 +-
 .../OpenLayers/Format/WPSCapabilities-js.html      |   6 +-
 .../Format/WPSCapabilities/v1_0_0-js.html          |  10 +-
 .../OpenLayers/Format/WPSDescribeProcess-js.html   |  10 +-
 .../files/OpenLayers/Format/WPSExecute-js.html     |  14 +-
 doc/apidocs/files/OpenLayers/Format/XLS-js.html    |   8 +-
 doc/apidocs/files/OpenLayers/Format/XLS/v1-js.html |  12 +-
 .../files/OpenLayers/Format/XLS/v1_1_0-js.html     |   8 +-
 doc/apidocs/files/OpenLayers/Format/XML-js.html    |  12 +-
 .../OpenLayers/Format/XML/VersionedOGC-js.html     |  12 +-
 doc/apidocs/files/OpenLayers/Geometry-js.html      |   6 +-
 .../files/OpenLayers/Geometry/Collection-js.html   |   6 +-
 .../files/OpenLayers/Geometry/Curve-js.html        |   6 +-
 .../files/OpenLayers/Geometry/LineString-js.html   |   6 +-
 .../files/OpenLayers/Geometry/LinearRing-js.html   |   6 +-
 .../OpenLayers/Geometry/MultiLineString-js.html    |   6 +-
 .../files/OpenLayers/Geometry/MultiPoint-js.html   |   6 +-
 .../files/OpenLayers/Geometry/MultiPolygon-js.html |   6 +-
 .../files/OpenLayers/Geometry/Point-js.html        |   6 +-
 .../files/OpenLayers/Geometry/Polygon-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Handler-js.html       |  22 +-
 doc/apidocs/files/OpenLayers/Handler/Box-js.html   |   6 +-
 doc/apidocs/files/OpenLayers/Handler/Click-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Handler/Drag-js.html  |   6 +-
 .../files/OpenLayers/Handler/Feature-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Handler/Hover-js.html |   6 +-
 .../files/OpenLayers/Handler/Keyboard-js.html      |   6 +-
 .../files/OpenLayers/Handler/MouseWheel-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Handler/Path-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Handler/Pinch-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Handler/Point-js.html |   6 +-
 .../files/OpenLayers/Handler/Polygon-js.html       |   6 +-
 .../OpenLayers/Handler/RegularPolygon-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Icon-js.html          |   6 +-
 doc/apidocs/files/OpenLayers/Kinetic-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang-js.html          |   6 +-
 doc/apidocs/files/OpenLayers/Lang/ar-js.html       |   8 +-
 .../files/OpenLayers/Lang/be-tarask-js.html        |   8 +-
 doc/apidocs/files/OpenLayers/Lang/bg-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/br-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/ca-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/cs-CZ-js.html    |   8 +-
 doc/apidocs/files/OpenLayers/Lang/da-DK-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Lang/de-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/el-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/en-CA-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Lang/en-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/es-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/fi-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/fr-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/fur-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Lang/gl-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/gsw-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Lang/hr-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/hsb-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Lang/hu-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/ia-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/id-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/io-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/is-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/it-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/ja-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/km-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/ksh-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Lang/lt-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/nb-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/nds-js.html      |   8 +-
 doc/apidocs/files/OpenLayers/Lang/nl-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/nn-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/oc-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/pl-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Lang/pt-BR-js.html    |   8 +-
 doc/apidocs/files/OpenLayers/Lang/pt-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/ro-js.html       |  39 ++
 doc/apidocs/files/OpenLayers/Lang/ru-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/sk-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/sv-SE-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Lang/te-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/vi-js.html       |   8 +-
 doc/apidocs/files/OpenLayers/Lang/zh-CN-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Lang/zh-TW-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Layer-js.html         |  36 +-
 .../files/OpenLayers/Layer/ArcGIS93Rest-js.html    |   6 +-
 .../files/OpenLayers/Layer/ArcGISCache-js.html     |   8 +-
 doc/apidocs/files/OpenLayers/Layer/ArcIMS-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Layer/Bing-js.html    |  16 +-
 doc/apidocs/files/OpenLayers/Layer/Boxes-js.html   |   6 +-
 .../files/OpenLayers/Layer/EventPane-js.html       |   6 +-
 .../files/OpenLayers/Layer/FixedZoomLevels-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Layer/GeoRSS-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Layer/Google-js.html  |   6 +-
 .../files/OpenLayers/Layer/Google/v3-js.html       |  18 +-
 doc/apidocs/files/OpenLayers/Layer/Grid-js.html    |  44 +-
 .../files/OpenLayers/Layer/HTTPRequest-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Layer/Image-js.html   |   6 +-
 doc/apidocs/files/OpenLayers/Layer/KaMap-js.html   |   6 +-
 .../files/OpenLayers/Layer/KaMapCache-js.html      |   6 +-
 .../files/OpenLayers/Layer/MapGuide-js.html        |   6 +-
 .../files/OpenLayers/Layer/MapServer-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Layer/Markers-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Layer/OSM-js.html     |  14 +-
 .../files/OpenLayers/Layer/PointGrid-js.html       |   6 +-
 .../files/OpenLayers/Layer/PointTrack-js.html      |   6 +-
 .../OpenLayers/Layer/SphericalMercator-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Layer/TMS-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Layer/Text-js.html    |   6 +-
 .../files/OpenLayers/Layer/TileCache-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Layer/UTFGrid-js.html |  12 +-
 doc/apidocs/files/OpenLayers/Layer/Vector-js.html  |  10 +-
 .../OpenLayers/Layer/Vector/RootContainer-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Layer/WMS-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Layer/WMTS-js.html    |   8 +-
 .../files/OpenLayers/Layer/WorldWind-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Layer/XYZ-js.html     |  10 +-
 doc/apidocs/files/OpenLayers/Layer/Zoomify-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Map-js.html           |  88 +--
 doc/apidocs/files/OpenLayers/Marker-js.html        |   6 +-
 doc/apidocs/files/OpenLayers/Marker/Box-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Popup-js.html         |   6 +-
 .../files/OpenLayers/Popup/Anchored-js.html        |   6 +-
 .../files/OpenLayers/Popup/AnchoredBubble-js.html  |  55 --
 doc/apidocs/files/OpenLayers/Popup/Framed-js.html  |   6 +-
 .../files/OpenLayers/Popup/FramedCloud-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Projection-js.html    |   6 +-
 doc/apidocs/files/OpenLayers/Protocol-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Protocol/CSW-js.html  |   6 +-
 .../files/OpenLayers/Protocol/CSW/v2_0_2-js.html   |   6 +-
 doc/apidocs/files/OpenLayers/Protocol/HTTP-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Protocol/SOS-js.html  |   6 +-
 .../files/OpenLayers/Protocol/SOS/v1_0_0-js.html   |   6 +-
 .../files/OpenLayers/Protocol/Script-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Protocol/WFS-js.html  |   6 +-
 .../files/OpenLayers/Protocol/WFS/v1-js.html       |   6 +-
 .../files/OpenLayers/Protocol/WFS/v1_0_0-js.html   |   6 +-
 .../files/OpenLayers/Protocol/WFS/v1_1_0-js.html   |   6 +-
 doc/apidocs/files/OpenLayers/Renderer-js.html      |   6 +-
 .../files/OpenLayers/Renderer/Canvas-js.html       |   6 +-
 .../files/OpenLayers/Renderer/Elements-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Renderer/SVG-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Renderer/VML-js.html  |   6 +-
 doc/apidocs/files/OpenLayers/Request-js.html       |   6 +-
 .../OpenLayers/Request/XMLHttpRequest-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Rule-js.html          |   6 +-
 doc/apidocs/files/OpenLayers/SingleFile-js.html    |   8 +-
 doc/apidocs/files/OpenLayers/Spherical-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Strategy-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Strategy/BBOX-js.html |   6 +-
 .../files/OpenLayers/Strategy/Cluster-js.html      |   6 +-
 .../files/OpenLayers/Strategy/Filter-js.html       |   6 +-
 .../files/OpenLayers/Strategy/Fixed-js.html        |   6 +-
 .../files/OpenLayers/Strategy/Paging-js.html       |   6 +-
 .../files/OpenLayers/Strategy/Refresh-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Strategy/Save-js.html |   6 +-
 doc/apidocs/files/OpenLayers/Style-js.html         |  10 +-
 doc/apidocs/files/OpenLayers/Style2-js.html        |   6 +-
 doc/apidocs/files/OpenLayers/StyleMap-js.html      |   6 +-
 doc/apidocs/files/OpenLayers/Symbolizer-js.html    |   6 +-
 .../files/OpenLayers/Symbolizer/Line-js.html       |   6 +-
 .../files/OpenLayers/Symbolizer/Point-js.html      |   6 +-
 .../files/OpenLayers/Symbolizer/Polygon-js.html    |   6 +-
 .../files/OpenLayers/Symbolizer/Raster-js.html     |   6 +-
 .../files/OpenLayers/Symbolizer/Text-js.html       |   6 +-
 doc/apidocs/files/OpenLayers/Tile-js.html          |   6 +-
 doc/apidocs/files/OpenLayers/Tile/Image-js.html    |  22 +-
 .../files/OpenLayers/Tile/Image/IFrame-js.html     |   6 +-
 doc/apidocs/files/OpenLayers/Tile/UTFGrid-js.html  |  12 +-
 doc/apidocs/files/OpenLayers/TileManager-js.html   |  55 ++
 doc/apidocs/files/OpenLayers/Tween-js.html         |  12 +-
 doc/apidocs/files/OpenLayers/Util-js.html          |   6 +-
 .../files/OpenLayers/Util/vendorPrefix-js.html     |  47 ++
 doc/apidocs/files/OpenLayers/WPSClient-js.html     |  56 ++
 doc/apidocs/files/OpenLayers/WPSProcess-js.html    |  72 ++
 doc/apidocs/files/deprecated-js.html               | 108 +--
 doc/apidocs/index/Classes.html                     |  14 +-
 doc/apidocs/index/Classes2.html                    |  10 +-
 doc/apidocs/index/Constants.html                   |  34 +-
 doc/apidocs/index/Constructor.html                 |  34 +-
 doc/apidocs/index/Constructor2.html                |  20 +-
 doc/apidocs/index/Constructor3.html                |  14 +-
 doc/apidocs/index/Files.html                       |   6 +-
 doc/apidocs/index/Functions.html                   |  10 +-
 doc/apidocs/index/Functions2.html                  |  10 +-
 doc/apidocs/index/Functions3.html                  |  10 +-
 doc/apidocs/index/Functions4.html                  |  12 +-
 doc/apidocs/index/Functions5.html                  |  10 +-
 doc/apidocs/index/Functions6.html                  |  28 +-
 doc/apidocs/index/Functions7.html                  |  10 +-
 doc/apidocs/index/Functions8.html                  |  18 +-
 doc/apidocs/index/General.html                     |  10 +-
 doc/apidocs/index/General10.html                   |  14 +-
 doc/apidocs/index/General11.html                   |  10 +-
 doc/apidocs/index/General12.html                   |  10 +-
 doc/apidocs/index/General13.html                   |  10 +-
 doc/apidocs/index/General14.html                   |  10 +-
 doc/apidocs/index/General15.html                   |  10 +-
 doc/apidocs/index/General16.html                   |  10 +-
 doc/apidocs/index/General17.html                   |  14 +-
 doc/apidocs/index/General18.html                   |  20 +-
 doc/apidocs/index/General19.html                   |  42 ++
 doc/apidocs/index/General2.html                    |  10 +-
 doc/apidocs/index/General20.html                   |  34 +
 doc/apidocs/index/General3.html                    |  10 +-
 doc/apidocs/index/General4.html                    |  10 +-
 doc/apidocs/index/General5.html                    |  10 +-
 doc/apidocs/index/General6.html                    |  10 +-
 doc/apidocs/index/General7.html                    |  10 +-
 doc/apidocs/index/General8.html                    |  14 +-
 doc/apidocs/index/General9.html                    |  12 +-
 doc/apidocs/index/Properties.html                  |  14 +-
 doc/apidocs/index/Properties2.html                 |  12 +-
 doc/apidocs/index/Properties3.html                 |  14 +-
 doc/apidocs/index/Properties4.html                 |  14 +-
 doc/apidocs/index/Properties5.html                 |  14 +-
 doc/apidocs/index/Properties6.html                 |  14 +-
 doc/apidocs/index/Properties7.html                 |  12 +-
 doc/apidocs/index/Properties8.html                 |  20 +-
 doc/apidocs/javascript/searchdata.js               |   4 +-
 doc/apidocs/search/{FilesC.html => ClassesC.html}  |   4 +-
 doc/apidocs/search/ClassesO.html                   |   4 +-
 doc/apidocs/search/ClassesS.html                   |   2 +-
 doc/apidocs/search/ClassesU.html                   |   2 +-
 doc/apidocs/search/ConstantsB.html                 |   2 +-
 doc/apidocs/search/ConstantsC.html                 |   4 +-
 doc/apidocs/search/ConstantsD.html                 |   2 +-
 doc/apidocs/search/ConstantsF.html                 |   2 +-
 doc/apidocs/search/ConstantsI.html                 |   4 +-
 doc/apidocs/search/ConstantsK.html                 |   2 +-
 doc/apidocs/search/ConstantsL.html                 |   2 +-
 doc/apidocs/search/ConstantsM.html                 |   4 +-
 doc/apidocs/search/ConstantsO.html                 |   2 +-
 doc/apidocs/search/ConstantsR.html                 |   2 +-
 doc/apidocs/search/ConstantsS.html                 |   2 +-
 doc/apidocs/search/ConstantsT.html                 |   2 +-
 doc/apidocs/search/ConstantsU.html                 |   2 +-
 doc/apidocs/search/ConstantsV.html                 |   2 +-
 doc/apidocs/search/ConstantsX.html                 |   2 +-
 doc/apidocs/search/ConstantsY.html                 |   2 +-
 doc/apidocs/search/ConstantsZ.html                 |   2 +-
 doc/apidocs/search/ConstructorA.html               |   4 +-
 doc/apidocs/search/ConstructorB.html               |   2 +-
 doc/apidocs/search/ConstructorC.html               |   4 +-
 doc/apidocs/search/ConstructorD.html               |   2 +-
 doc/apidocs/search/ConstructorE.html               |   4 +-
 doc/apidocs/search/ConstructorF.html               |   4 +-
 doc/apidocs/search/ConstructorG.html               |   2 +-
 doc/apidocs/search/ConstructorH.html               |   2 +-
 doc/apidocs/search/ConstructorI.html               |   2 +-
 doc/apidocs/search/ConstructorJ.html               |   2 +-
 doc/apidocs/search/ConstructorK.html               |   2 +-
 doc/apidocs/search/ConstructorL.html               |   2 +-
 doc/apidocs/search/ConstructorM.html               |   2 +-
 doc/apidocs/search/ConstructorN.html               |   2 +-
 doc/apidocs/search/ConstructorO.html               |   4 +-
 doc/apidocs/search/ConstructorP.html               |   2 +-
 doc/apidocs/search/ConstructorR.html               |   2 +-
 doc/apidocs/search/ConstructorS.html               |   2 +-
 doc/apidocs/search/ConstructorT.html               |   4 +-
 doc/apidocs/search/ConstructorU.html               |   2 +-
 doc/apidocs/search/ConstructorV.html               |   4 +-
 doc/apidocs/search/ConstructorW.html               |   4 +-
 doc/apidocs/search/ConstructorX.html               |   2 +-
 doc/apidocs/search/ConstructorY.html               |   2 +-
 doc/apidocs/search/ConstructorZ.html               |   2 +-
 doc/apidocs/search/FilesA.html                     |   2 +-
 doc/apidocs/search/FilesC.html                     |   2 +-
 doc/apidocs/search/FilesD.html                     |   2 +-
 doc/apidocs/search/FilesO.html                     |   2 +-
 doc/apidocs/search/FilesS.html                     |   2 +-
 doc/apidocs/search/FilesV.html                     |   2 +-
 doc/apidocs/search/FunctionsA.html                 |   4 +-
 doc/apidocs/search/FunctionsB.html                 |   2 +-
 doc/apidocs/search/FunctionsC.html                 |   4 +-
 doc/apidocs/search/FunctionsD.html                 |   4 +-
 doc/apidocs/search/FunctionsE.html                 |   4 +-
 doc/apidocs/search/FunctionsF.html                 |   2 +-
 doc/apidocs/search/FunctionsG.html                 |   4 +-
 doc/apidocs/search/FunctionsH.html                 |   2 +-
 doc/apidocs/search/FunctionsI.html                 |   2 +-
 .../search/{ConstantsX.html => FunctionsJ.html}    |   4 +-
 doc/apidocs/search/FunctionsL.html                 |   2 +-
 doc/apidocs/search/FunctionsM.html                 |   4 +-
 doc/apidocs/search/FunctionsN.html                 |   2 +-
 doc/apidocs/search/FunctionsO.html                 |   4 +-
 doc/apidocs/search/FunctionsP.html                 |   2 +-
 doc/apidocs/search/FunctionsR.html                 |   4 +-
 doc/apidocs/search/FunctionsS.html                 |   4 +-
 doc/apidocs/search/FunctionsT.html                 |   2 +-
 doc/apidocs/search/FunctionsU.html                 |   2 +-
 doc/apidocs/search/FunctionsV.html                 |   2 +-
 doc/apidocs/search/FunctionsW.html                 |   4 +-
 doc/apidocs/search/FunctionsZ.html                 |   2 +-
 doc/apidocs/search/GeneralA.html                   |   4 +-
 doc/apidocs/search/GeneralB.html                   |   2 +-
 doc/apidocs/search/GeneralC.html                   |   4 +-
 doc/apidocs/search/GeneralD.html                   |   4 +-
 doc/apidocs/search/GeneralE.html                   |   4 +-
 doc/apidocs/search/GeneralF.html                   |   4 +-
 doc/apidocs/search/GeneralG.html                   |   4 +-
 doc/apidocs/search/GeneralH.html                   |   4 +-
 doc/apidocs/search/GeneralI.html                   |   4 +-
 doc/apidocs/search/GeneralJ.html                   |   4 +-
 doc/apidocs/search/GeneralK.html                   |   2 +-
 doc/apidocs/search/GeneralL.html                   |   4 +-
 doc/apidocs/search/GeneralM.html                   |   4 +-
 doc/apidocs/search/GeneralN.html                   |   2 +-
 doc/apidocs/search/GeneralO.html                   |   4 +-
 doc/apidocs/search/GeneralP.html                   |   4 +-
 doc/apidocs/search/GeneralQ.html                   |   4 +-
 doc/apidocs/search/GeneralR.html                   |   4 +-
 doc/apidocs/search/GeneralS.html                   |   4 +-
 doc/apidocs/search/GeneralT.html                   |   4 +-
 doc/apidocs/search/GeneralU.html                   |   4 +-
 doc/apidocs/search/GeneralV.html                   |   4 +-
 doc/apidocs/search/GeneralW.html                   |   4 +-
 doc/apidocs/search/GeneralX.html                   |   2 +-
 doc/apidocs/search/GeneralY.html                   |   2 +-
 doc/apidocs/search/GeneralZ.html                   |   4 +-
 doc/apidocs/search/NoResults.html                  |   2 +-
 doc/apidocs/search/PropertiesA.html                |   4 +-
 doc/apidocs/search/PropertiesB.html                |   2 +-
 doc/apidocs/search/PropertiesC.html                |   4 +-
 doc/apidocs/search/PropertiesD.html                |   4 +-
 doc/apidocs/search/PropertiesE.html                |   4 +-
 doc/apidocs/search/PropertiesF.html                |   4 +-
 doc/apidocs/search/PropertiesG.html                |   4 +-
 doc/apidocs/search/PropertiesH.html                |   4 +-
 doc/apidocs/search/PropertiesI.html                |   4 +-
 doc/apidocs/search/PropertiesK.html                |   2 +-
 doc/apidocs/search/PropertiesL.html                |   4 +-
 doc/apidocs/search/PropertiesM.html                |   4 +-
 doc/apidocs/search/PropertiesN.html                |   2 +-
 doc/apidocs/search/PropertiesO.html                |   2 +-
 doc/apidocs/search/PropertiesP.html                |   4 +-
 doc/apidocs/search/PropertiesQ.html                |   4 +-
 doc/apidocs/search/PropertiesR.html                |   4 +-
 doc/apidocs/search/PropertiesS.html                |   4 +-
 doc/apidocs/search/PropertiesT.html                |   4 +-
 doc/apidocs/search/PropertiesU.html                |   4 +-
 doc/apidocs/search/PropertiesV.html                |   4 +-
 doc/apidocs/search/PropertiesW.html                |   2 +-
 doc/apidocs/search/PropertiesX.html                |   2 +-
 doc/apidocs/search/PropertiesY.html                |   2 +-
 doc/apidocs/search/PropertiesZ.html                |   4 +-
 doc/devdocs/files/OpenLayers-js.html               |  10 +-
 doc/devdocs/files/OpenLayers/Animation-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/BaseTypes-js.html     |  22 +-
 .../files/OpenLayers/BaseTypes/Bounds-js.html      |  81 ++-
 .../files/OpenLayers/BaseTypes/Class-js.html       |   8 +-
 .../files/OpenLayers/BaseTypes/Date-js.html        |  12 +-
 .../files/OpenLayers/BaseTypes/Element-js.html     |   6 +-
 .../files/OpenLayers/BaseTypes/LonLat-js.html      |   6 +-
 .../files/OpenLayers/BaseTypes/Pixel-js.html       |   6 +-
 .../files/OpenLayers/BaseTypes/Size-js.html        |   6 +-
 doc/devdocs/files/OpenLayers/Console-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Control-js.html       |  10 +-
 .../files/OpenLayers/Control/ArgParser-js.html     |   6 +-
 .../files/OpenLayers/Control/Attribution-js.html   |  14 +-
 .../files/OpenLayers/Control/Button-js.html        |   6 +-
 .../files/OpenLayers/Control/CacheRead-js.html     |   6 +-
 .../files/OpenLayers/Control/CacheWrite-js.html    |  24 +-
 .../files/OpenLayers/Control/DragFeature-js.html   |   6 +-
 .../files/OpenLayers/Control/DragPan-js.html       |  10 +-
 .../files/OpenLayers/Control/DrawFeature-js.html   |   6 +-
 .../OpenLayers/Control/EditingToolbar-js.html      |   6 +-
 .../files/OpenLayers/Control/Geolocate-js.html     |  12 +-
 .../files/OpenLayers/Control/GetFeature-js.html    |   6 +-
 .../files/OpenLayers/Control/Graticule-js.html     |   6 +-
 .../OpenLayers/Control/KeyboardDefaults-js.html    |   6 +-
 .../files/OpenLayers/Control/LayerSwitcher-js.html |  12 +-
 .../files/OpenLayers/Control/Measure-js.html       |   8 +-
 .../files/OpenLayers/Control/ModifyFeature-js.html |  54 +-
 .../files/OpenLayers/Control/MousePosition-js.html |  29 +-
 .../files/OpenLayers/Control/NavToolbar-js.html    |   6 +-
 .../files/OpenLayers/Control/Navigation-js.html    |  10 +-
 .../OpenLayers/Control/NavigationHistory-js.html   |   6 +-
 .../files/OpenLayers/Control/OverviewMap-js.html   |  12 +-
 doc/devdocs/files/OpenLayers/Control/Pan-js.html   |  16 +-
 .../files/OpenLayers/Control/PanPanel-js.html      |   6 +-
 .../files/OpenLayers/Control/PanZoom-js.html       |   6 +-
 .../files/OpenLayers/Control/PanZoomBar-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Control/Panel-js.html |   6 +-
 .../files/OpenLayers/Control/Permalink-js.html     |   6 +-
 .../files/OpenLayers/Control/PinchZoom-js.html     |  24 +-
 .../files/OpenLayers/Control/SLDSelect-js.html     |  24 +-
 doc/devdocs/files/OpenLayers/Control/Scale-js.html |   6 +-
 .../files/OpenLayers/Control/ScaleLine-js.html     |   6 +-
 .../files/OpenLayers/Control/SelectFeature-js.html |   6 +-
 .../files/OpenLayers/Control/Snapping-js.html      |   8 +-
 doc/devdocs/files/OpenLayers/Control/Split-js.html |   6 +-
 .../OpenLayers/Control/TouchNavigation-js.html     |   8 +-
 .../OpenLayers/Control/TransformFeature-js.html    |   6 +-
 .../files/OpenLayers/Control/UTFGrid-js.html       |   6 +-
 .../OpenLayers/Control/WMSGetFeatureInfo-js.html   |   6 +-
 .../OpenLayers/Control/WMTSGetFeatureInfo-js.html  |   6 +-
 doc/devdocs/files/OpenLayers/Control/Zoom-js.html  |   8 +-
 .../files/OpenLayers/Control/ZoomBox-js.html       |  12 +-
 .../files/OpenLayers/Control/ZoomIn-js.html        |  14 +-
 .../files/OpenLayers/Control/ZoomOut-js.html       |  14 +-
 .../files/OpenLayers/Control/ZoomPanel-js.html     |   6 +-
 .../OpenLayers/Control/ZoomToMaxExtent-js.html     |  16 +-
 doc/devdocs/files/OpenLayers/Events-js.html        |  38 +-
 .../files/OpenLayers/Events/buttonclick-js.html    |  12 +-
 .../files/OpenLayers/Events/featureclick-js.html   |  75 +++
 doc/devdocs/files/OpenLayers/Feature-js.html       |  24 +-
 .../files/OpenLayers/Feature/Vector-js.html        |   8 +-
 doc/devdocs/files/OpenLayers/Filter-js.html        |   6 +-
 .../files/OpenLayers/Filter/Comparison-js.html     |   8 +-
 .../files/OpenLayers/Filter/FeatureId-js.html      |   6 +-
 .../files/OpenLayers/Filter/Function-js.html       |   6 +-
 .../files/OpenLayers/Filter/Logical-js.html        |   6 +-
 .../files/OpenLayers/Filter/Spatial-js.html        |   6 +-
 doc/devdocs/files/OpenLayers/Format-js.html        |   6 +-
 doc/devdocs/files/OpenLayers/Format/ArcXML-js.html |  16 +-
 .../OpenLayers/Format/ArcXML/Features-js.html      |  12 +-
 doc/devdocs/files/OpenLayers/Format/Atom-js.html   |  22 +-
 doc/devdocs/files/OpenLayers/Format/CQL-js.html    |   6 +-
 .../files/OpenLayers/Format/CSWGetDomain-js.html   |   6 +-
 .../OpenLayers/Format/CSWGetDomain/v2_0_2-js.html  |  10 +-
 .../files/OpenLayers/Format/CSWGetRecords-js.html  |   6 +-
 .../OpenLayers/Format/CSWGetRecords/v2_0_2-js.html |  10 +-
 .../files/OpenLayers/Format/Context-js.html        |   6 +-
 .../OpenLayers/Format/EncodedPolyline-js.html      |  85 +++
 doc/devdocs/files/OpenLayers/Format/Filter-js.html |  10 +-
 .../files/OpenLayers/Format/Filter/v1-js.html      |  22 +-
 .../files/OpenLayers/Format/Filter/v1_0_0-js.html  |   8 +-
 .../files/OpenLayers/Format/Filter/v1_1_0-js.html  |   8 +-
 doc/devdocs/files/OpenLayers/Format/GML-js.html    |  46 +-
 .../files/OpenLayers/Format/GML/Base-js.html       |  24 +-
 doc/devdocs/files/OpenLayers/Format/GML/v2-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Format/GML/v3-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Format/GPX-js.html    |  26 +-
 .../files/OpenLayers/Format/GeoJSON-js.html        |   6 +-
 doc/devdocs/files/OpenLayers/Format/GeoRSS-js.html |  24 +-
 doc/devdocs/files/OpenLayers/Format/JSON-js.html   |   6 +-
 doc/devdocs/files/OpenLayers/Format/KML-js.html    |  56 +-
 .../OpenLayers/Format/OGCExceptionReport-js.html   |  10 +-
 doc/devdocs/files/OpenLayers/Format/OSM-js.html    |  20 +-
 .../files/OpenLayers/Format/OWSCommon-js.html      |   6 +-
 .../files/OpenLayers/Format/OWSCommon/v1-js.html   |  10 +-
 .../OpenLayers/Format/OWSCommon/v1_0_0-js.html     |   6 +-
 .../OpenLayers/Format/OWSCommon/v1_1_0-js.html     |   6 +-
 .../files/OpenLayers/Format/OWSContext-js.html     |   6 +-
 .../OpenLayers/Format/OWSContext/v0_3_1-js.html    |  12 +-
 .../OpenLayers/Format/QueryStringFilter-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Format/SLD-js.html    |  10 +-
 doc/devdocs/files/OpenLayers/Format/SLD/v1-js.html |   8 +-
 .../files/OpenLayers/Format/SLD/v1_0_0-js.html     |   8 +-
 .../OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html |   6 +-
 .../OpenLayers/Format/SOSCapabilities-js.html      |   6 +-
 .../Format/SOSCapabilities/v1_0_0-js.html          |   6 +-
 .../Format/SOSGetFeatureOfInterest-js.html         |  12 +-
 .../OpenLayers/Format/SOSGetObservation-js.html    |  10 +-
 doc/devdocs/files/OpenLayers/Format/Text-js.html   |   6 +-
 .../OpenLayers/Format/WCSCapabilities-js.html      |  51 ++
 .../OpenLayers/Format/WCSCapabilities/v1-js.html   |  47 ++
 .../Format/WCSCapabilities/v1_0_0-js.html          |  51 ++
 .../Format/WCSCapabilities/v1_1_0-js.html          |  53 ++
 .../files/OpenLayers/Format/WCSGetCoverage-js.html |  10 +-
 doc/devdocs/files/OpenLayers/Format/WFS-js.html    |   8 +-
 .../OpenLayers/Format/WFSCapabilities-js.html      |  10 +-
 .../OpenLayers/Format/WFSCapabilities/v1-js.html   |  12 +-
 .../Format/WFSCapabilities/v1_0_0-js.html          |   6 +-
 .../Format/WFSCapabilities/v1_1_0-js.html          |   6 +-
 .../Format/WFSDescribeFeatureType-js.html          |  12 +-
 doc/devdocs/files/OpenLayers/Format/WFST-js.html   |   8 +-
 .../files/OpenLayers/Format/WFST/v1-js.html        |  16 +-
 .../files/OpenLayers/Format/WFST/v1_0_0-js.html    |   6 +-
 .../files/OpenLayers/Format/WFST/v1_1_0-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Format/WKT-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Format/WMC-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Format/WMC/v1-js.html |  14 +-
 .../files/OpenLayers/Format/WMC/v1_0_0-js.html     |   6 +-
 .../files/OpenLayers/Format/WMC/v1_1_0-js.html     |   6 +-
 .../OpenLayers/Format/WMSCapabilities-js.html      |   6 +-
 .../OpenLayers/Format/WMSCapabilities/v1-js.html   |  10 +-
 .../OpenLayers/Format/WMSCapabilities/v1_1-js.html |   6 +-
 .../Format/WMSCapabilities/v1_1_0-js.html          |   6 +-
 .../Format/WMSCapabilities/v1_1_1-js.html          |  10 +-
 .../Format/WMSCapabilities/v1_1_1_WMSC-js.html     |   6 +-
 .../OpenLayers/Format/WMSCapabilities/v1_3-js.html |   6 +-
 .../Format/WMSCapabilities/v1_3_0-js.html          |   6 +-
 .../OpenLayers/Format/WMSDescribeLayer-js.html     |  14 +-
 .../Format/WMSDescribeLayer/v1_1-js.html           |  18 +-
 .../OpenLayers/Format/WMSGetFeatureInfo-js.html    |  14 +-
 .../OpenLayers/Format/WMTSCapabilities-js.html     |   8 +-
 .../Format/WMTSCapabilities/v1_0_0-js.html         |   6 +-
 .../OpenLayers/Format/WPSCapabilities-js.html      |   6 +-
 .../Format/WPSCapabilities/v1_0_0-js.html          |  10 +-
 .../OpenLayers/Format/WPSDescribeProcess-js.html   |  10 +-
 .../files/OpenLayers/Format/WPSExecute-js.html     |  14 +-
 doc/devdocs/files/OpenLayers/Format/XLS-js.html    |   8 +-
 doc/devdocs/files/OpenLayers/Format/XLS/v1-js.html |  12 +-
 .../files/OpenLayers/Format/XLS/v1_1_0-js.html     |   8 +-
 doc/devdocs/files/OpenLayers/Format/XML-js.html    |  24 +-
 .../OpenLayers/Format/XML/VersionedOGC-js.html     |  14 +-
 doc/devdocs/files/OpenLayers/Geometry-js.html      |  34 +-
 .../files/OpenLayers/Geometry/Collection-js.html   |   6 +-
 .../files/OpenLayers/Geometry/Curve-js.html        |   6 +-
 .../files/OpenLayers/Geometry/LineString-js.html   |   6 +-
 .../files/OpenLayers/Geometry/LinearRing-js.html   |   6 +-
 .../OpenLayers/Geometry/MultiLineString-js.html    |   6 +-
 .../files/OpenLayers/Geometry/MultiPoint-js.html   |   6 +-
 .../files/OpenLayers/Geometry/MultiPolygon-js.html |   6 +-
 .../files/OpenLayers/Geometry/Point-js.html        |   6 +-
 .../files/OpenLayers/Geometry/Polygon-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Handler-js.html       |  36 +-
 doc/devdocs/files/OpenLayers/Handler/Box-js.html   |   6 +-
 doc/devdocs/files/OpenLayers/Handler/Click-js.html |  26 +-
 doc/devdocs/files/OpenLayers/Handler/Drag-js.html  |  10 +-
 .../files/OpenLayers/Handler/Feature-js.html       |  10 +-
 doc/devdocs/files/OpenLayers/Handler/Hover-js.html |   6 +-
 .../files/OpenLayers/Handler/Keyboard-js.html      |   6 +-
 .../files/OpenLayers/Handler/MouseWheel-js.html    |  18 +-
 doc/devdocs/files/OpenLayers/Handler/Path-js.html  |   6 +-
 doc/devdocs/files/OpenLayers/Handler/Pinch-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Handler/Point-js.html |  10 +-
 .../files/OpenLayers/Handler/Polygon-js.html       |   6 +-
 .../OpenLayers/Handler/RegularPolygon-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Icon-js.html          |   6 +-
 doc/devdocs/files/OpenLayers/Kinetic-js.html       |  12 +-
 doc/devdocs/files/OpenLayers/Lang-js.html          |   6 +-
 doc/devdocs/files/OpenLayers/Lang/ar-js.html       |   8 +-
 .../files/OpenLayers/Lang/be-tarask-js.html        |   8 +-
 doc/devdocs/files/OpenLayers/Lang/bg-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/br-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/ca-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/cs-CZ-js.html    |   8 +-
 doc/devdocs/files/OpenLayers/Lang/da-DK-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Lang/de-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/el-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/en-CA-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Lang/en-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/es-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/fi-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/fr-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/fur-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Lang/gl-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/gsw-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Lang/hr-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/hsb-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Lang/hu-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/ia-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/id-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/io-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/is-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/it-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/ja-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/km-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/ksh-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Lang/lt-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/nb-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/nds-js.html      |   8 +-
 doc/devdocs/files/OpenLayers/Lang/nl-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/nn-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/oc-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/pl-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Lang/pt-BR-js.html    |   8 +-
 doc/devdocs/files/OpenLayers/Lang/pt-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/ro-js.html       |  39 ++
 doc/devdocs/files/OpenLayers/Lang/ru-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/sk-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/sv-SE-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Lang/te-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/vi-js.html       |   8 +-
 doc/devdocs/files/OpenLayers/Lang/zh-CN-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Lang/zh-TW-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Layer-js.html         |  48 +-
 .../files/OpenLayers/Layer/ArcGIS93Rest-js.html    |   6 +-
 .../files/OpenLayers/Layer/ArcGISCache-js.html     |  20 +-
 doc/devdocs/files/OpenLayers/Layer/ArcIMS-js.html  |   6 +-
 doc/devdocs/files/OpenLayers/Layer/Bing-js.html    |  20 +-
 doc/devdocs/files/OpenLayers/Layer/Boxes-js.html   |   6 +-
 .../files/OpenLayers/Layer/EventPane-js.html       |   6 +-
 .../files/OpenLayers/Layer/FixedZoomLevels-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Layer/GeoRSS-js.html  |   6 +-
 doc/devdocs/files/OpenLayers/Layer/Google-js.html  |   6 +-
 .../files/OpenLayers/Layer/Google/v3-js.html       |  22 +-
 doc/devdocs/files/OpenLayers/Layer/Grid-js.html    | 110 ++-
 .../files/OpenLayers/Layer/HTTPRequest-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Layer/Image-js.html   |  14 +-
 doc/devdocs/files/OpenLayers/Layer/KaMap-js.html   |  18 +-
 .../files/OpenLayers/Layer/KaMapCache-js.html      |   6 +-
 .../files/OpenLayers/Layer/MapGuide-js.html        |  18 +-
 .../files/OpenLayers/Layer/MapServer-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Layer/Markers-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Layer/OSM-js.html     |  14 +-
 .../files/OpenLayers/Layer/PointGrid-js.html       |   6 +-
 .../files/OpenLayers/Layer/PointTrack-js.html      |   6 +-
 .../OpenLayers/Layer/SphericalMercator-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Layer/TMS-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Layer/Text-js.html    |   6 +-
 .../files/OpenLayers/Layer/TileCache-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Layer/UTFGrid-js.html |  30 +-
 doc/devdocs/files/OpenLayers/Layer/Vector-js.html  |  10 +-
 .../OpenLayers/Layer/Vector/RootContainer-js.html  |   6 +-
 doc/devdocs/files/OpenLayers/Layer/WMS-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Layer/WMTS-js.html    |   8 +-
 .../files/OpenLayers/Layer/WorldWind-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Layer/XYZ-js.html     |  10 +-
 doc/devdocs/files/OpenLayers/Layer/Zoomify-js.html |  26 +-
 doc/devdocs/files/OpenLayers/Map-js.html           | 134 ++--
 doc/devdocs/files/OpenLayers/Marker-js.html        |   6 +-
 doc/devdocs/files/OpenLayers/Marker/Box-js.html    |   8 +-
 doc/devdocs/files/OpenLayers/Popup-js.html         |   6 +-
 .../files/OpenLayers/Popup/Anchored-js.html        |   6 +-
 .../files/OpenLayers/Popup/AnchoredBubble-js.html  |  69 --
 doc/devdocs/files/OpenLayers/Popup/Framed-js.html  |   6 +-
 .../files/OpenLayers/Popup/FramedCloud-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Projection-js.html    |   6 +-
 doc/devdocs/files/OpenLayers/Protocol-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Protocol/CSW-js.html  |   6 +-
 .../files/OpenLayers/Protocol/CSW/v2_0_2-js.html   |   6 +-
 doc/devdocs/files/OpenLayers/Protocol/HTTP-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Protocol/SOS-js.html  |   8 +-
 .../files/OpenLayers/Protocol/SOS/v1_0_0-js.html   |   6 +-
 .../files/OpenLayers/Protocol/Script-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Protocol/WFS-js.html  |   6 +-
 .../files/OpenLayers/Protocol/WFS/v1-js.html       |  10 +-
 .../files/OpenLayers/Protocol/WFS/v1_0_0-js.html   |   6 +-
 .../files/OpenLayers/Protocol/WFS/v1_1_0-js.html   |   6 +-
 doc/devdocs/files/OpenLayers/Renderer-js.html      |   6 +-
 .../files/OpenLayers/Renderer/Canvas-js.html       |   6 +-
 .../files/OpenLayers/Renderer/Elements-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Renderer/SVG-js.html  |  12 +-
 doc/devdocs/files/OpenLayers/Renderer/VML-js.html  |   6 +-
 doc/devdocs/files/OpenLayers/Request-js.html       |   6 +-
 .../OpenLayers/Request/XMLHttpRequest-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Rule-js.html          |   6 +-
 doc/devdocs/files/OpenLayers/SingleFile-js.html    |   8 +-
 doc/devdocs/files/OpenLayers/Spherical-js.html     |   6 +-
 doc/devdocs/files/OpenLayers/Strategy-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Strategy/BBOX-js.html |   6 +-
 .../files/OpenLayers/Strategy/Cluster-js.html      |   6 +-
 .../files/OpenLayers/Strategy/Filter-js.html       |   6 +-
 .../files/OpenLayers/Strategy/Fixed-js.html        |  12 +-
 .../files/OpenLayers/Strategy/Paging-js.html       |   6 +-
 .../files/OpenLayers/Strategy/Refresh-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Strategy/Save-js.html |   6 +-
 doc/devdocs/files/OpenLayers/Style-js.html         |   6 +-
 doc/devdocs/files/OpenLayers/Style2-js.html        |   6 +-
 doc/devdocs/files/OpenLayers/StyleMap-js.html      |   6 +-
 doc/devdocs/files/OpenLayers/Symbolizer-js.html    |   6 +-
 .../files/OpenLayers/Symbolizer/Line-js.html       |   6 +-
 .../files/OpenLayers/Symbolizer/Point-js.html      |   6 +-
 .../files/OpenLayers/Symbolizer/Polygon-js.html    |   6 +-
 .../files/OpenLayers/Symbolizer/Raster-js.html     |   6 +-
 .../files/OpenLayers/Symbolizer/Text-js.html       |   6 +-
 doc/devdocs/files/OpenLayers/Tile-js.html          |  10 +-
 doc/devdocs/files/OpenLayers/Tile/Image-js.html    |  28 +-
 .../files/OpenLayers/Tile/Image/IFrame-js.html     |  12 +-
 doc/devdocs/files/OpenLayers/Tile/UTFGrid-js.html  |  14 +-
 doc/devdocs/files/OpenLayers/TileManager-js.html   |  99 +++
 doc/devdocs/files/OpenLayers/Tween-js.html         |  14 +-
 doc/devdocs/files/OpenLayers/Util-js.html          |  24 +-
 .../files/OpenLayers/Util/vendorPrefix-js.html     |  49 ++
 doc/devdocs/files/OpenLayers/WPSClient-js.html     |  70 ++
 doc/devdocs/files/OpenLayers/WPSProcess-js.html    | 108 +++
 doc/devdocs/files/deprecated-js.html               | 202 +++---
 doc/devdocs/index/Classes.html                     |  14 +-
 doc/devdocs/index/Classes2.html                    |  10 +-
 doc/devdocs/index/Constants.html                   |  34 +-
 doc/devdocs/index/Constructor.html                 |  34 +-
 doc/devdocs/index/Constructor2.html                |  20 +-
 doc/devdocs/index/Constructor3.html                |  14 +-
 doc/devdocs/index/Files.html                       |   6 +-
 doc/devdocs/index/Functions.html                   |  10 +-
 doc/devdocs/index/Functions10.html                 |  14 +-
 doc/devdocs/index/Functions11.html                 |  14 +-
 doc/devdocs/index/Functions12.html                 |  14 +-
 doc/devdocs/index/Functions13.html                 |  10 +-
 doc/devdocs/index/Functions14.html                 |  10 +-
 doc/devdocs/index/Functions15.html                 |  10 +-
 doc/devdocs/index/Functions16.html                 |  10 +-
 doc/devdocs/index/Functions17.html                 |  14 +-
 doc/devdocs/index/Functions18.html                 |  12 +-
 doc/devdocs/index/Functions19.html                 |  38 ++
 doc/devdocs/index/Functions2.html                  |  10 +-
 doc/devdocs/index/Functions3.html                  |  10 +-
 doc/devdocs/index/Functions4.html                  |  10 +-
 doc/devdocs/index/Functions5.html                  |  10 +-
 doc/devdocs/index/Functions6.html                  |  10 +-
 doc/devdocs/index/Functions7.html                  |  10 +-
 doc/devdocs/index/Functions8.html                  |  10 +-
 doc/devdocs/index/Functions9.html                  |  14 +-
 doc/devdocs/index/General.html                     |  10 +-
 doc/devdocs/index/General10.html                   |  12 +-
 doc/devdocs/index/General11.html                   |  10 +-
 doc/devdocs/index/General12.html                   |  10 +-
 doc/devdocs/index/General13.html                   |  10 +-
 doc/devdocs/index/General14.html                   |  10 +-
 doc/devdocs/index/General15.html                   |  10 +-
 doc/devdocs/index/General16.html                   |  10 +-
 doc/devdocs/index/General17.html                   |  10 +-
 doc/devdocs/index/General18.html                   |  10 +-
 doc/devdocs/index/General19.html                   |  10 +-
 doc/devdocs/index/General2.html                    |  10 +-
 doc/devdocs/index/General20.html                   |  10 +-
 doc/devdocs/index/General21.html                   |  10 +-
 doc/devdocs/index/General22.html                   |  10 +-
 doc/devdocs/index/General23.html                   |  14 +-
 doc/devdocs/index/General3.html                    |  10 +-
 doc/devdocs/index/General4.html                    |  10 +-
 doc/devdocs/index/General5.html                    |  10 +-
 doc/devdocs/index/General6.html                    |  10 +-
 doc/devdocs/index/General7.html                    |  10 +-
 doc/devdocs/index/General8.html                    |  10 +-
 doc/devdocs/index/General9.html                    |  10 +-
 doc/devdocs/index/Properties.html                  |  12 +-
 doc/devdocs/index/Properties10.html                |  12 +-
 doc/devdocs/index/Properties11.html                |  12 +-
 doc/devdocs/index/Properties12.html                |  10 +-
 doc/devdocs/index/Properties13.html                |  10 +-
 doc/devdocs/index/Properties14.html                |  12 +-
 doc/devdocs/index/Properties15.html                |  20 +-
 doc/devdocs/index/Properties16.html                |  34 +
 doc/devdocs/index/Properties2.html                 |  10 +-
 doc/devdocs/index/Properties3.html                 |  10 +-
 doc/devdocs/index/Properties4.html                 |  10 +-
 doc/devdocs/index/Properties5.html                 |  10 +-
 doc/devdocs/index/Properties6.html                 |  12 +-
 doc/devdocs/index/Properties7.html                 |  14 +-
 doc/devdocs/index/Properties8.html                 |  10 +-
 doc/devdocs/index/Properties9.html                 |  10 +-
 doc/devdocs/javascript/searchdata.js               |   4 +-
 .../FilesC.html => devdocs/search/ClassesC.html}   |   4 +-
 doc/devdocs/search/ClassesO.html                   |   4 +-
 doc/devdocs/search/ClassesS.html                   |   2 +-
 doc/devdocs/search/ClassesU.html                   |   2 +-
 doc/devdocs/search/ConstantsB.html                 |   2 +-
 doc/devdocs/search/ConstantsC.html                 |   4 +-
 doc/devdocs/search/ConstantsD.html                 |   2 +-
 doc/devdocs/search/ConstantsF.html                 |   2 +-
 doc/devdocs/search/ConstantsI.html                 |   4 +-
 doc/devdocs/search/ConstantsK.html                 |   2 +-
 doc/devdocs/search/ConstantsL.html                 |   2 +-
 doc/devdocs/search/ConstantsM.html                 |   4 +-
 doc/devdocs/search/ConstantsO.html                 |   2 +-
 doc/devdocs/search/ConstantsR.html                 |   2 +-
 doc/devdocs/search/ConstantsS.html                 |   2 +-
 doc/devdocs/search/ConstantsT.html                 |   2 +-
 doc/devdocs/search/ConstantsU.html                 |   2 +-
 doc/devdocs/search/ConstantsV.html                 |   2 +-
 doc/devdocs/search/ConstantsX.html                 |   2 +-
 doc/devdocs/search/ConstantsY.html                 |   2 +-
 doc/devdocs/search/ConstantsZ.html                 |   2 +-
 doc/devdocs/search/ConstructorA.html               |   4 +-
 doc/devdocs/search/ConstructorB.html               |   2 +-
 doc/devdocs/search/ConstructorC.html               |   4 +-
 doc/devdocs/search/ConstructorD.html               |   2 +-
 doc/devdocs/search/ConstructorE.html               |   4 +-
 doc/devdocs/search/ConstructorF.html               |   4 +-
 doc/devdocs/search/ConstructorG.html               |   2 +-
 doc/devdocs/search/ConstructorH.html               |   2 +-
 doc/devdocs/search/ConstructorI.html               |   2 +-
 doc/devdocs/search/ConstructorJ.html               |   2 +-
 doc/devdocs/search/ConstructorK.html               |   2 +-
 doc/devdocs/search/ConstructorL.html               |   2 +-
 doc/devdocs/search/ConstructorM.html               |   2 +-
 doc/devdocs/search/ConstructorN.html               |   2 +-
 doc/devdocs/search/ConstructorO.html               |   4 +-
 doc/devdocs/search/ConstructorP.html               |   2 +-
 doc/devdocs/search/ConstructorR.html               |   2 +-
 doc/devdocs/search/ConstructorS.html               |   2 +-
 doc/devdocs/search/ConstructorT.html               |   4 +-
 doc/devdocs/search/ConstructorU.html               |   2 +-
 doc/devdocs/search/ConstructorV.html               |   4 +-
 doc/devdocs/search/ConstructorW.html               |   4 +-
 doc/devdocs/search/ConstructorX.html               |   2 +-
 doc/devdocs/search/ConstructorY.html               |   2 +-
 doc/devdocs/search/ConstructorZ.html               |   2 +-
 doc/devdocs/search/FilesA.html                     |   2 +-
 doc/devdocs/search/FilesC.html                     |   2 +-
 doc/devdocs/search/FilesD.html                     |   2 +-
 doc/devdocs/search/FilesI.html                     |   2 +-
 doc/devdocs/search/FilesK.html                     |   2 +-
 doc/devdocs/search/FilesO.html                     |   2 +-
 doc/devdocs/search/FilesS.html                     |   2 +-
 doc/devdocs/search/FilesV.html                     |   2 +-
 doc/devdocs/search/FilesW.html                     |   2 +-
 doc/devdocs/search/FunctionsA.html                 |   4 +-
 doc/devdocs/search/FunctionsB.html                 |   2 +-
 doc/devdocs/search/FunctionsC.html                 |   4 +-
 doc/devdocs/search/FunctionsD.html                 |   4 +-
 doc/devdocs/search/FunctionsE.html                 |   4 +-
 doc/devdocs/search/FunctionsF.html                 |   4 +-
 doc/devdocs/search/FunctionsG.html                 |   4 +-
 doc/devdocs/search/FunctionsH.html                 |   4 +-
 doc/devdocs/search/FunctionsI.html                 |   4 +-
 .../search/FunctionsJ.html}                        |   4 +-
 doc/devdocs/search/FunctionsL.html                 |   2 +-
 doc/devdocs/search/FunctionsM.html                 |   4 +-
 doc/devdocs/search/FunctionsN.html                 |   2 +-
 doc/devdocs/search/FunctionsO.html                 |   4 +-
 doc/devdocs/search/FunctionsP.html                 |   4 +-
 doc/devdocs/search/FunctionsQ.html                 |   4 +-
 doc/devdocs/search/FunctionsR.html                 |   4 +-
 doc/devdocs/search/FunctionsS.html                 |   4 +-
 doc/devdocs/search/FunctionsSymbols.html           |   2 +-
 doc/devdocs/search/FunctionsT.html                 |   4 +-
 doc/devdocs/search/FunctionsU.html                 |   4 +-
 doc/devdocs/search/FunctionsV.html                 |   2 +-
 doc/devdocs/search/FunctionsW.html                 |   4 +-
 doc/devdocs/search/FunctionsZ.html                 |   4 +-
 doc/devdocs/search/GeneralA.html                   |   4 +-
 doc/devdocs/search/GeneralB.html                   |   4 +-
 doc/devdocs/search/GeneralC.html                   |   4 +-
 doc/devdocs/search/GeneralD.html                   |   4 +-
 doc/devdocs/search/GeneralE.html                   |   4 +-
 doc/devdocs/search/GeneralF.html                   |   4 +-
 doc/devdocs/search/GeneralG.html                   |   4 +-
 doc/devdocs/search/GeneralH.html                   |   4 +-
 doc/devdocs/search/GeneralI.html                   |   4 +-
 doc/devdocs/search/GeneralJ.html                   |   4 +-
 doc/devdocs/search/GeneralK.html                   |   2 +-
 doc/devdocs/search/GeneralL.html                   |   4 +-
 doc/devdocs/search/GeneralM.html                   |   4 +-
 doc/devdocs/search/GeneralN.html                   |   4 +-
 doc/devdocs/search/GeneralO.html                   |   4 +-
 doc/devdocs/search/GeneralP.html                   |   4 +-
 doc/devdocs/search/GeneralQ.html                   |   4 +-
 doc/devdocs/search/GeneralR.html                   |   4 +-
 doc/devdocs/search/GeneralS.html                   |   4 +-
 doc/devdocs/search/GeneralSymbols.html             |   2 +-
 doc/devdocs/search/GeneralT.html                   |   4 +-
 doc/devdocs/search/GeneralU.html                   |   4 +-
 doc/devdocs/search/GeneralV.html                   |   4 +-
 doc/devdocs/search/GeneralW.html                   |   4 +-
 doc/devdocs/search/GeneralX.html                   |   2 +-
 doc/devdocs/search/GeneralY.html                   |   2 +-
 doc/devdocs/search/GeneralZ.html                   |   4 +-
 doc/devdocs/search/NoResults.html                  |   2 +-
 doc/devdocs/search/PropertiesA.html                |   4 +-
 doc/devdocs/search/PropertiesB.html                |   4 +-
 doc/devdocs/search/PropertiesC.html                |   4 +-
 doc/devdocs/search/PropertiesD.html                |   4 +-
 doc/devdocs/search/PropertiesE.html                |   4 +-
 doc/devdocs/search/PropertiesF.html                |   4 +-
 doc/devdocs/search/PropertiesG.html                |   4 +-
 doc/devdocs/search/PropertiesH.html                |   4 +-
 doc/devdocs/search/PropertiesI.html                |   4 +-
 doc/devdocs/search/PropertiesJ.html                |   2 +-
 doc/devdocs/search/PropertiesK.html                |   2 +-
 doc/devdocs/search/PropertiesL.html                |   4 +-
 doc/devdocs/search/PropertiesM.html                |   4 +-
 doc/devdocs/search/PropertiesN.html                |   4 +-
 doc/devdocs/search/PropertiesO.html                |   4 +-
 doc/devdocs/search/PropertiesP.html                |   4 +-
 doc/devdocs/search/PropertiesQ.html                |   2 +-
 doc/devdocs/search/PropertiesR.html                |   4 +-
 doc/devdocs/search/PropertiesS.html                |   4 +-
 doc/devdocs/search/PropertiesSymbols.html          |   2 +-
 doc/devdocs/search/PropertiesT.html                |   4 +-
 doc/devdocs/search/PropertiesU.html                |   2 +-
 doc/devdocs/search/PropertiesV.html                |   4 +-
 doc/devdocs/search/PropertiesW.html                |   2 +-
 doc/devdocs/search/PropertiesX.html                |   2 +-
 doc/devdocs/search/PropertiesY.html                |   2 +-
 doc/devdocs/search/PropertiesZ.html                |   4 +-
 doc_config/Data/ClassHierarchy.nd                  | Bin 35570 -> 37279 bytes
 doc_config/Data/ConfigFileInfo.nd                  | Bin 26 -> 26 bytes
 doc_config/Data/FileInfo.nd                        | 634 ++++++++---------
 doc_config/Data/ImageFileInfo.nd                   | Bin 219 -> 219 bytes
 doc_config/Data/ImageReferenceTable.nd             | Bin 638 -> 439 bytes
 doc_config/Data/IndexInfo.nd                       | Bin 267 -> 267 bytes
 doc_config/Data/PreviousMenuState.nd               | Bin 26068 -> 27063 bytes
 doc_config/Data/PreviousSettings.nd                | Bin 117 -> 117 bytes
 doc_config/Data/SymbolTable.nd                     | Bin 1148763 -> 1188206 bytes
 doc_config/Languages.txt                           |   2 +-
 doc_config/Menu.txt                                | 198 +++---
 doc_config/Topics.txt                              |   2 +-
 examples/WMSDescribeLayerParser.html               |   9 +-
 examples/all-overlays-google.html                  |   1 -
 examples/bing-tiles.js                             |   4 +-
 examples/bootstrap.html                            |  81 +++
 examples/bootstrap.js                              |  31 +
 examples/cache-write.js                            |  12 +-
 examples/cartodb-geojson.html                      |  71 ++
 examples/click.html                                |   4 +-
 examples/data/4_m_citylights_lg.gif                | Bin 0 -> 19000 bytes
 examples/data/tazdem.tiff                          | Bin 0 -> 58048 bytes
 examples/editing-methods.js                        |  12 +-
 examples/encoded-polyline.html                     |  47 ++
 examples/feature-events.html                       |  46 ++
 examples/feature-events.js                         |  67 ++
 examples/fullScreen.js                             |  14 +-
 examples/fusiontables.html                         |   7 +-
 examples/fusiontables.js                           |  21 +-
 examples/game-accel-ball.html                      |   2 +-
 examples/geojson-reprojected.html                  |  46 ++
 examples/geojson-reprojected.js                    |  27 +
 examples/geojson-reprojected.json                  |   1 +
 examples/geolocation.js                            |   9 +-
 examples/getfeatureinfo-control.html               |   3 +-
 examples/google-v3-alloverlays.html                |   1 -
 examples/google-v3.html                            |  16 -
 examples/google-v3.js                              |  53 +-
 examples/highlight-feature.html                    |   2 -
 examples/image-layer.html                          |  15 +-
 examples/mapbox.js                                 |  32 +-
 examples/mapquest.html                             |  28 +
 examples/mapquest.js                               |  36 +
 examples/marker-shadow.html                        |   2 +-
 examples/mobile-drawing.js                         |  10 +-
 examples/mobile-jq.js                              | 175 ++---
 examples/mobile-wmts-vienna.css                    |  41 +-
 examples/mobile-wmts-vienna.js                     | 171 ++---
 examples/mouse-position.html                       |  44 +-
 examples/ordering.html                             |   8 +-
 examples/osm-google.html                           |   1 -
 .../{osm-google.html => osm-marker-popup.html}     |  19 +-
 examples/osm-marker-popup.js                       |  39 ++
 examples/overviewmap.html                          |   4 +-
 examples/polar-projections.html                    |  41 ++
 examples/polar-projections.js                      |  84 +++
 examples/proxy.cgi                                 |   2 +-
 examples/select-feature.html                       |   5 +-
 examples/snap-split.html                           |  23 +-
 examples/snapping.html                             |  10 +-
 examples/spherical-mercator.html                   |  11 +-
 examples/strategy-cluster-extended.js              | 138 ++--
 examples/strategy-cluster-threshold.html           |  19 +-
 examples/strategy-cluster.html                     |  17 +-
 examples/stylemap.html                             |   2 +-
 examples/tilecache.html                            |   2 +-
 examples/using-proj4js.js                          |  15 +-
 examples/vector-features.html                      |   7 +-
 examples/vector-formats.html                       |  11 +-
 examples/wfs-states.html                           |   3 +-
 examples/wfs-states.js                             |   6 +
 examples/wmts-capabilities.html                    |   8 +-
 examples/wmts-capabilities.js                      |  17 +-
 examples/wps-client.html                           |  31 +
 examples/wps-client.js                             |  75 +++
 examples/wps.html                                  |  89 +++
 examples/wps.js                                    | 353 ++++++++++
 lib/OpenLayers.js                                  |  24 +-
 lib/OpenLayers/Animation.js                        |  22 +-
 lib/OpenLayers/BaseTypes.js                        |  35 +-
 lib/OpenLayers/BaseTypes/Bounds.js                 | 196 ++++--
 lib/OpenLayers/BaseTypes/Class.js                  |   2 +-
 lib/OpenLayers/BaseTypes/Date.js                   |  31 +-
 lib/OpenLayers/BaseTypes/Element.js                |   2 +-
 lib/OpenLayers/BaseTypes/LonLat.js                 |   2 +-
 lib/OpenLayers/BaseTypes/Pixel.js                  |   2 +-
 lib/OpenLayers/BaseTypes/Size.js                   |   2 +-
 lib/OpenLayers/Console.js                          |   2 +-
 lib/OpenLayers/Control.js                          |   8 +-
 lib/OpenLayers/Control/ArgParser.js                |   2 +-
 lib/OpenLayers/Control/Attribution.js              |   6 +-
 lib/OpenLayers/Control/Button.js                   |   2 +-
 lib/OpenLayers/Control/CacheRead.js                |   2 +-
 lib/OpenLayers/Control/CacheWrite.js               |  62 +-
 lib/OpenLayers/Control/DragFeature.js              |   2 +-
 lib/OpenLayers/Control/DragPan.js                  |  21 +-
 lib/OpenLayers/Control/DrawFeature.js              |   3 +-
 lib/OpenLayers/Control/EditingToolbar.js           |   2 +-
 lib/OpenLayers/Control/Geolocate.js                |  15 +-
 lib/OpenLayers/Control/GetFeature.js               |   3 +-
 lib/OpenLayers/Control/Graticule.js                |   2 +-
 lib/OpenLayers/Control/KeyboardDefaults.js         |  14 +-
 lib/OpenLayers/Control/LayerSwitcher.js            | 281 ++++----
 lib/OpenLayers/Control/Measure.js                  |  45 +-
 lib/OpenLayers/Control/ModifyFeature.js            | 321 ++++-----
 lib/OpenLayers/Control/MousePosition.js            |  95 +--
 lib/OpenLayers/Control/NavToolbar.js               |   2 +-
 lib/OpenLayers/Control/Navigation.js               |  40 +-
 lib/OpenLayers/Control/NavigationHistory.js        |   2 +-
 lib/OpenLayers/Control/OverviewMap.js              |  35 +-
 lib/OpenLayers/Control/Pan.js                      |  53 +-
 lib/OpenLayers/Control/PanPanel.js                 |   2 +-
 lib/OpenLayers/Control/PanZoom.js                  |   2 +-
 lib/OpenLayers/Control/PanZoomBar.js               |  14 +-
 lib/OpenLayers/Control/Panel.js                    |   2 +-
 lib/OpenLayers/Control/Permalink.js                |  13 +-
 lib/OpenLayers/Control/PinchZoom.js                | 108 +--
 lib/OpenLayers/Control/SLDSelect.js                |   8 +-
 lib/OpenLayers/Control/Scale.js                    |   2 +-
 lib/OpenLayers/Control/ScaleLine.js                |   2 +-
 lib/OpenLayers/Control/SelectFeature.js            |  24 +-
 lib/OpenLayers/Control/Snapping.js                 |   4 +-
 lib/OpenLayers/Control/Split.js                    |   4 +-
 lib/OpenLayers/Control/TouchNavigation.js          |   5 +-
 lib/OpenLayers/Control/TransformFeature.js         |   2 +-
 lib/OpenLayers/Control/UTFGrid.js                  |   2 +-
 lib/OpenLayers/Control/WMSGetFeatureInfo.js        | 117 ++--
 lib/OpenLayers/Control/WMTSGetFeatureInfo.js       |   3 +-
 lib/OpenLayers/Control/Zoom.js                     |   6 +-
 lib/OpenLayers/Control/ZoomBox.js                  |  49 +-
 lib/OpenLayers/Control/ZoomIn.js                   |  18 +-
 lib/OpenLayers/Control/ZoomOut.js                  |  18 +-
 lib/OpenLayers/Control/ZoomPanel.js                |   2 +-
 lib/OpenLayers/Control/ZoomToMaxExtent.js          |  19 +-
 lib/OpenLayers/Events.js                           | 251 ++++++-
 lib/OpenLayers/Events/buttonclick.js               |  29 +-
 lib/OpenLayers/Events/featureclick.js              | 321 +++++++++
 lib/OpenLayers/Feature.js                          |   2 +-
 lib/OpenLayers/Feature/Vector.js                   |   8 +-
 lib/OpenLayers/Filter.js                           |   2 +-
 lib/OpenLayers/Filter/Comparison.js                |   9 +-
 lib/OpenLayers/Filter/FeatureId.js                 |   2 +-
 lib/OpenLayers/Filter/Function.js                  |   2 +-
 lib/OpenLayers/Filter/Logical.js                   |   2 +-
 lib/OpenLayers/Filter/Spatial.js                   |   2 +-
 lib/OpenLayers/Format.js                           |   2 +-
 lib/OpenLayers/Format/ArcXML.js                    |   4 +-
 lib/OpenLayers/Format/ArcXML/Features.js           |   4 +-
 lib/OpenLayers/Format/Atom.js                      |   4 +-
 lib/OpenLayers/Format/CQL.js                       |  34 +-
 lib/OpenLayers/Format/CSWGetDomain.js              |   2 +-
 lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js       |   2 +-
 lib/OpenLayers/Format/CSWGetRecords.js             |   2 +-
 lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js      |   2 +-
 lib/OpenLayers/Format/Context.js                   |   2 +-
 lib/OpenLayers/Format/EncodedPolyline.js           | 557 +++++++++++++++
 lib/OpenLayers/Format/Filter.js                    |   4 +-
 lib/OpenLayers/Format/Filter/v1.js                 |  91 +--
 lib/OpenLayers/Format/Filter/v1_0_0.js             |   2 +-
 lib/OpenLayers/Format/Filter/v1_1_0.js             |   2 +-
 lib/OpenLayers/Format/GML.js                       |   4 +-
 lib/OpenLayers/Format/GML/Base.js                  |  14 +-
 lib/OpenLayers/Format/GML/v2.js                    |   2 +-
 lib/OpenLayers/Format/GML/v3.js                    |  17 +-
 lib/OpenLayers/Format/GPX.js                       |  18 +-
 lib/OpenLayers/Format/GeoJSON.js                   |   2 +-
 lib/OpenLayers/Format/GeoRSS.js                    |   2 +-
 lib/OpenLayers/Format/JSON.js                      |   2 +-
 lib/OpenLayers/Format/KML.js                       |  15 +-
 lib/OpenLayers/Format/OGCExceptionReport.js        |   2 +-
 lib/OpenLayers/Format/OSM.js                       |   2 +-
 lib/OpenLayers/Format/OWSCommon.js                 |   2 +-
 lib/OpenLayers/Format/OWSCommon/v1.js              |   6 +-
 lib/OpenLayers/Format/OWSCommon/v1_0_0.js          |   2 +-
 lib/OpenLayers/Format/OWSCommon/v1_1_0.js          |   2 +-
 lib/OpenLayers/Format/OWSContext.js                |   2 +-
 lib/OpenLayers/Format/OWSContext/v0_3_1.js         |   9 +-
 lib/OpenLayers/Format/QueryStringFilter.js         |   2 +-
 lib/OpenLayers/Format/SLD.js                       |   4 +-
 lib/OpenLayers/Format/SLD/v1.js                    |   2 +-
 lib/OpenLayers/Format/SLD/v1_0_0.js                |   2 +-
 lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js      |   9 +-
 lib/OpenLayers/Format/SOSCapabilities.js           |   2 +-
 lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js    |   2 +-
 lib/OpenLayers/Format/SOSGetFeatureOfInterest.js   |   2 +-
 lib/OpenLayers/Format/SOSGetObservation.js         |   2 +-
 lib/OpenLayers/Format/Text.js                      |   2 +-
 .../{WPSCapabilities.js => WCSCapabilities.js}     |  27 +-
 lib/OpenLayers/Format/WCSCapabilities/v1.js        |  55 ++
 lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js    | 170 +++++
 lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js    | 109 +++
 lib/OpenLayers/Format/WCSGetCoverage.js            |   2 +-
 lib/OpenLayers/Format/WFS.js                       |   2 +-
 lib/OpenLayers/Format/WFSCapabilities.js           |  11 +-
 lib/OpenLayers/Format/WFSCapabilities/v1.js        |  12 +-
 lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js    |   2 +-
 lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js    |   2 +-
 lib/OpenLayers/Format/WFSDescribeFeatureType.js    |  53 +-
 lib/OpenLayers/Format/WFST.js                      |   2 +-
 lib/OpenLayers/Format/WFST/v1.js                   |   4 +-
 lib/OpenLayers/Format/WFST/v1_0_0.js               |   6 +-
 lib/OpenLayers/Format/WFST/v1_1_0.js               |   4 +-
 lib/OpenLayers/Format/WKT.js                       |  14 +-
 lib/OpenLayers/Format/WMC.js                       |   2 +-
 lib/OpenLayers/Format/WMC/v1.js                    |   2 +-
 lib/OpenLayers/Format/WMC/v1_0_0.js                |   2 +-
 lib/OpenLayers/Format/WMC/v1_1_0.js                |   2 +-
 lib/OpenLayers/Format/WMSCapabilities.js           |   2 +-
 lib/OpenLayers/Format/WMSCapabilities/v1.js        |   2 +-
 lib/OpenLayers/Format/WMSCapabilities/v1_1.js      |  22 +-
 lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js    |   2 +-
 lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js    |   9 +-
 .../Format/WMSCapabilities/v1_1_1_WMSC.js          |   2 +-
 lib/OpenLayers/Format/WMSCapabilities/v1_3.js      |   4 +-
 lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js    |   4 +-
 lib/OpenLayers/Format/WMSDescribeLayer.js          |  24 +-
 lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js     |  40 +-
 lib/OpenLayers/Format/WMSGetFeatureInfo.js         |   2 +-
 lib/OpenLayers/Format/WMTSCapabilities.js          | 182 +++--
 lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js   |  12 +-
 lib/OpenLayers/Format/WPSCapabilities.js           |   2 +-
 lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js    |   2 +-
 lib/OpenLayers/Format/WPSDescribeProcess.js        |   6 +-
 lib/OpenLayers/Format/WPSExecute.js                | 151 ++++-
 lib/OpenLayers/Format/XLS.js                       |   4 +-
 lib/OpenLayers/Format/XLS/v1.js                    |   2 +-
 lib/OpenLayers/Format/XLS/v1_1_0.js                |   2 +-
 lib/OpenLayers/Format/XML.js                       |  22 +-
 lib/OpenLayers/Format/XML/VersionedOGC.js          |  46 +-
 lib/OpenLayers/Geometry.js                         |  38 +-
 lib/OpenLayers/Geometry/Collection.js              |   2 +-
 lib/OpenLayers/Geometry/Curve.js                   |   2 +-
 lib/OpenLayers/Geometry/LineString.js              |   2 +-
 lib/OpenLayers/Geometry/LinearRing.js              |  46 +-
 lib/OpenLayers/Geometry/MultiLineString.js         |   2 +-
 lib/OpenLayers/Geometry/MultiPoint.js              |   2 +-
 lib/OpenLayers/Geometry/MultiPolygon.js            |   2 +-
 lib/OpenLayers/Geometry/Point.js                   |   2 +-
 lib/OpenLayers/Geometry/Polygon.js                 |   2 +-
 lib/OpenLayers/Handler.js                          |  47 +-
 lib/OpenLayers/Handler/Box.js                      |   2 +-
 lib/OpenLayers/Handler/Click.js                    |  35 +-
 lib/OpenLayers/Handler/Drag.js                     |  25 +-
 lib/OpenLayers/Handler/Feature.js                  |  37 +-
 lib/OpenLayers/Handler/Hover.js                    |   2 +-
 lib/OpenLayers/Handler/Keyboard.js                 |   2 +-
 lib/OpenLayers/Handler/MouseWheel.js               | 119 ++--
 lib/OpenLayers/Handler/Path.js                     |  12 +-
 lib/OpenLayers/Handler/Pinch.js                    |  19 +-
 lib/OpenLayers/Handler/Point.js                    |  22 +-
 lib/OpenLayers/Handler/Polygon.js                  |   2 +-
 lib/OpenLayers/Handler/RegularPolygon.js           |   2 +-
 lib/OpenLayers/Icon.js                             |   2 +-
 lib/OpenLayers/Kinetic.js                          |   2 +-
 lib/OpenLayers/Lang.js                             |   2 +-
 lib/OpenLayers/Lang/en.js                          |   3 -
 lib/OpenLayers/Lang/es.js                          |   6 +-
 lib/OpenLayers/Lang/fr.js                          |   4 +-
 lib/OpenLayers/Lang/lt.js                          |   6 +-
 lib/OpenLayers/Lang/pl.js                          |  14 +-
 lib/OpenLayers/Lang/pt-BR.js                       |   2 +-
 lib/OpenLayers/Lang/ro.js                          |  69 ++
 lib/OpenLayers/Layer.js                            |  26 +-
 lib/OpenLayers/Layer/ArcGIS93Rest.js               |   3 +-
 lib/OpenLayers/Layer/ArcGISCache.js                |  47 +-
 lib/OpenLayers/Layer/ArcIMS.js                     |   2 +-
 lib/OpenLayers/Layer/Bing.js                       |  37 +-
 lib/OpenLayers/Layer/Boxes.js                      |   2 +-
 lib/OpenLayers/Layer/EventPane.js                  |   2 +-
 lib/OpenLayers/Layer/FixedZoomLevels.js            |   2 +-
 lib/OpenLayers/Layer/GeoRSS.js                     |   2 +-
 lib/OpenLayers/Layer/Google.js                     |   6 +-
 lib/OpenLayers/Layer/Google/v3.js                  | 182 +----
 lib/OpenLayers/Layer/Grid.js                       | 677 +++++++++----------
 lib/OpenLayers/Layer/HTTPRequest.js                |   2 +-
 lib/OpenLayers/Layer/Image.js                      |   2 +-
 lib/OpenLayers/Layer/KaMap.js                      |  40 +-
 lib/OpenLayers/Layer/KaMapCache.js                 |   2 +-
 lib/OpenLayers/Layer/MapGuide.js                   |  46 +-
 lib/OpenLayers/Layer/MapServer.js                  |   2 +-
 lib/OpenLayers/Layer/Markers.js                    |   2 +-
 lib/OpenLayers/Layer/OSM.js                        |   4 +-
 lib/OpenLayers/Layer/PointGrid.js                  |   2 +-
 lib/OpenLayers/Layer/PointTrack.js                 |   2 +-
 lib/OpenLayers/Layer/SphericalMercator.js          |   2 +-
 lib/OpenLayers/Layer/TMS.js                        |   2 +-
 lib/OpenLayers/Layer/Text.js                       |   2 +-
 lib/OpenLayers/Layer/TileCache.js                  |  33 +-
 lib/OpenLayers/Layer/UTFGrid.js                    |  14 +-
 lib/OpenLayers/Layer/Vector.js                     |   9 +-
 lib/OpenLayers/Layer/Vector/RootContainer.js       |   2 +-
 lib/OpenLayers/Layer/WMS.js                        |   5 +-
 lib/OpenLayers/Layer/WMTS.js                       |  22 +-
 lib/OpenLayers/Layer/WorldWind.js                  |   2 +-
 lib/OpenLayers/Layer/XYZ.js                        |   4 +-
 lib/OpenLayers/Layer/Zoomify.js                    |  53 +-
 lib/OpenLayers/Map.js                              | 397 ++++++++---
 lib/OpenLayers/Marker.js                           |   2 +-
 lib/OpenLayers/Marker/Box.js                       |   4 +-
 lib/OpenLayers/Popup.js                            |   4 +-
 lib/OpenLayers/Popup/Anchored.js                   |   9 +-
 lib/OpenLayers/Popup/AnchoredBubble.js             | 196 ------
 lib/OpenLayers/Popup/Framed.js                     |   2 +-
 lib/OpenLayers/Popup/FramedCloud.js                |   2 +-
 lib/OpenLayers/Projection.js                       |   9 +-
 lib/OpenLayers/Protocol.js                         |   2 +-
 lib/OpenLayers/Protocol/CSW.js                     |   2 +-
 lib/OpenLayers/Protocol/CSW/v2_0_2.js              |   4 +-
 lib/OpenLayers/Protocol/HTTP.js                    |   2 +-
 lib/OpenLayers/Protocol/SOS.js                     |   2 +-
 lib/OpenLayers/Protocol/SOS/v1_0_0.js              |   2 +-
 lib/OpenLayers/Protocol/Script.js                  |   2 +-
 lib/OpenLayers/Protocol/WFS.js                     |   2 +-
 lib/OpenLayers/Protocol/WFS/v1.js                  |   7 +-
 lib/OpenLayers/Protocol/WFS/v1_0_0.js              |   2 +-
 lib/OpenLayers/Protocol/WFS/v1_1_0.js              |   2 +-
 lib/OpenLayers/Renderer.js                         |   2 +-
 lib/OpenLayers/Renderer/Canvas.js                  |  10 +-
 lib/OpenLayers/Renderer/Elements.js                |   2 +-
 lib/OpenLayers/Renderer/SVG.js                     |  42 +-
 lib/OpenLayers/Renderer/VML.js                     |  10 +-
 lib/OpenLayers/Request.js                          |  21 +-
 lib/OpenLayers/Request/XMLHttpRequest.js           |   7 +
 lib/OpenLayers/Rule.js                             |   2 +-
 lib/OpenLayers/SingleFile.js                       |   4 +-
 lib/OpenLayers/Spherical.js                        |   2 +-
 lib/OpenLayers/Strategy.js                         |   2 +-
 lib/OpenLayers/Strategy/BBOX.js                    |  35 +-
 lib/OpenLayers/Strategy/Cluster.js                 |  10 +-
 lib/OpenLayers/Strategy/Filter.js                  |   2 +-
 lib/OpenLayers/Strategy/Fixed.js                   |  32 +-
 lib/OpenLayers/Strategy/Paging.js                  |   2 +-
 lib/OpenLayers/Strategy/Refresh.js                 |   6 +-
 lib/OpenLayers/Strategy/Save.js                    |   2 +-
 lib/OpenLayers/Style.js                            |   4 +-
 lib/OpenLayers/Style2.js                           |   2 +-
 lib/OpenLayers/StyleMap.js                         |   2 +-
 lib/OpenLayers/Symbolizer.js                       |   2 +-
 lib/OpenLayers/Symbolizer/Line.js                  |   2 +-
 lib/OpenLayers/Symbolizer/Point.js                 |   2 +-
 lib/OpenLayers/Symbolizer/Polygon.js               |   2 +-
 lib/OpenLayers/Symbolizer/Raster.js                |   2 +-
 lib/OpenLayers/Symbolizer/Text.js                  |   2 +-
 lib/OpenLayers/Tile.js                             |  21 +-
 lib/OpenLayers/Tile/Image.js                       | 177 ++---
 lib/OpenLayers/Tile/Image/IFrame.js                |  16 +-
 lib/OpenLayers/Tile/UTFGrid.js                     |   3 +-
 lib/OpenLayers/TileManager.js                      | 460 +++++++++++++
 lib/OpenLayers/Tween.js                            |  28 +-
 lib/OpenLayers/Util.js                             |  77 ++-
 lib/OpenLayers/Util/vendorPrefix.js                | 131 ++++
 lib/OpenLayers/WPSClient.js                        | 223 ++++++
 lib/OpenLayers/WPSProcess.js                       | 501 ++++++++++++++
 lib/deprecated.js                                  | 196 +++++-
 license.txt                                        |   2 +-
 notes/2.12.md                                      |  15 +-
 notes/2.13.md                                      | 159 +++++
 readme.md                                          |   2 +-
 tests/Animation.html                               |   1 +
 tests/BaseTypes.html                               |  62 +-
 tests/BaseTypes/Bounds.html                        | 230 ++++---
 tests/BaseTypes/Date.html                          |   9 +
 tests/Control/CacheWrite.html                      |   5 +-
 tests/Control/Geolocate.html                       |  12 -
 tests/Control/LayerSwitcher.html                   |  53 +-
 tests/Control/ModifyFeature.html                   | 126 ++--
 tests/Control/Navigation.html                      |   1 +
 tests/Control/NavigationHistory.html               |   2 +-
 tests/Control/OverviewMap.html                     |  48 ++
 tests/Control/Pan.html                             | 201 ++++++
 tests/Control/PanZoomBar.html                      |  33 +-
 tests/Control/Permalink.html                       |  33 +-
 tests/Control/PinchZoom.html                       |  67 +-
 tests/Control/SLDSelect.html                       |  56 ++
 tests/Control/Scale.html                           |   4 +-
 tests/Control/SelectFeature.html                   |  65 ++
 tests/Control/Split.html                           |  21 +-
 tests/Control/TouchNavigation.html                 |  15 +-
 tests/Control/UTFGrid.html                         |   1 +
 tests/Control/Zoom.html                            |   6 +-
 tests/Control/ZoomBox.html                         |  54 ++
 tests/Control/ZoomIn.html                          | 101 +++
 tests/Control/ZoomOut.html                         | 100 +++
 tests/Control/ZoomToMaxExtent.html                 | 102 +++
 tests/Events.html                                  |  53 +-
 tests/Events/buttonclick.html                      |  34 +
 tests/Events/featureclick.html                     |  91 +++
 tests/Feature.html                                 |   2 +-
 tests/Filter/Comparison.html                       |  56 ++
 tests/Format/CQL.html                              |  77 +++
 tests/Format/EncodedPolyline.html                  | 372 ++++++++++
 tests/Format/Filter/v1.html                        | 143 ++++
 tests/Format/GML/cases.js                          |  11 +-
 tests/Format/GML/v3.html                           |   9 +-
 tests/Format/GPX.html                              |   6 +
 tests/Format/KML.html                              | 181 ++++-
 tests/Format/OWSContext/v0_3_1.html                |  37 +
 tests/Format/SLD/v1_0_0.html                       |  54 ++
 tests/Format/SLD/v1_0_0_GeoServer.html             |  50 ++
 .../{WFSCapabilities.html => WCSCapabilities.html} |  22 +-
 tests/Format/WCSCapabilities/v1.html               |  87 +++
 tests/Format/WFSCapabilities.html                  |   2 +-
 tests/Format/WFSCapabilities/v1.html               |   8 +-
 tests/Format/WFSDescribeFeatureType.html           |  57 +-
 tests/Format/WFST/v1_0_0.html                      |   8 +-
 tests/Format/WFST/v1_1_0.html                      |  10 +-
 tests/Format/WMSCapabilities/v1_1_1.html           |  11 +-
 tests/Format/WMSCapabilities/v1_1_1_WMSC.html      | 136 ++++
 tests/Format/WMSDescribeLayer.html                 |  34 +-
 tests/Format/WMTSCapabilities/v1_0_0.html          | 750 ++++++++++++++++++++-
 tests/Format/WPSDescribeProcess.html               |  12 +-
 tests/Format/WPSExecute.html                       |  30 +-
 tests/Format/XML.html                              |  29 +
 tests/Geometry.html                                |  17 +-
 tests/Geometry/Polygon.html                        |  26 +
 tests/Handler.html                                 |  16 +-
 tests/Handler/Click.html                           |  58 ++
 tests/Handler/Drag.html                            |  31 +-
 tests/Handler/Feature.html                         |  58 +-
 tests/Handler/MouseWheel.html                      |  16 +-
 tests/Handler/Path.html                            |  19 +-
 tests/Handler/Pinch.html                           |  57 +-
 tests/Handler/Point.html                           |  29 +-
 tests/Layer.html                                   |  18 +-
 tests/Layer/ArcGIS93Rest.html                      |  15 +-
 tests/Layer/ArcGISCache.html                       |  12 +-
 tests/Layer/Bing.html                              |  54 +-
 tests/Layer/Google.html                            | 139 ++--
 tests/Layer/Google/v3.html                         |  89 +--
 tests/Layer/Grid.html                              | 457 +++++++------
 tests/Layer/KaMap.html                             |  10 +-
 tests/Layer/MapServer.html                         |   6 +-
 tests/Layer/Markers.html                           |   2 +-
 tests/Layer/PointGrid.html                         |   3 +-
 tests/Layer/SphericalMercator.html                 |   6 +-
 tests/Layer/UTFGrid.html                           |  18 +-
 tests/Layer/WMS.html                               |  56 +-
 tests/Layer/WMTS.html                              |   3 +-
 tests/Layer/WrapDateLine.html                      |  12 +-
 tests/Map.html                                     | 203 +++++-
 tests/Popup.html                                   |   5 +-
 tests/Popup/Anchored.html                          |   2 +-
 tests/Projection.html                              |   2 +-
 tests/Renderer/Canvas.html                         |   4 +-
 tests/Request.html                                 |  30 +-
 tests/Strategy/BBOX.html                           |  44 +-
 tests/Strategy/Cluster.html                        |  24 +-
 tests/Strategy/Fixed.html                          |  56 +-
 tests/Strategy/Refresh.html                        |  15 +
 tests/Test.AnotherWay.baseadditions.js             |  14 +
 tests/Tile.html                                    |   2 +-
 tests/Tile/Image.html                              |  30 +-
 tests/Tile/Image/IFrame.html                       |   6 +-
 tests/Tile/UTFGrid.html                            |   3 +-
 tests/TileManager.html                             | 137 ++++
 tests/Tween.html                                   |  33 +
 tests/Util.html                                    |  76 ++-
 tests/Util/vendorPrefix.html                       | 117 ++++
 .../rendered-dimensions.html => Util_common.js}    | 166 ++---
 tests/Util_w3c.html                                |  35 +
 tests/WPSClient.html                               | 108 +++
 tests/WPSProcess.html                              | 188 ++++++
 tests/deprecated/Layer/MapServer.html              |  13 +-
 tests/deprecated/Layer/MapServer/Untiled.html      |   5 +-
 tests/deprecated/Layer/WMS.html                    |  10 +-
 tests/{ => deprecated}/Popup/AnchoredBubble.html   |  12 +-
 tests/deprecated/Util.html                         |  20 +
 tests/list-tests.html                              |  17 +-
 tests/manual/google-tilt.html                      |   1 -
 tests/manual/map-events.html                       |  38 ++
 tests/run-tests.html                               |   6 +-
 theme/default/google.css                           |   8 -
 theme/default/google.tidy.css                      |   2 +-
 theme/default/style.css                            |  32 +
 theme/default/style.mobile.css                     |  29 +-
 theme/default/style.mobile.tidy.css                |   2 +-
 theme/default/style.tidy.css                       |   2 +-
 tools/mergejs.py                                   |   2 +-
 tools/release.sh                                   |  49 +-
 tools/uglify_js.py                                 |  35 +
 1496 files changed, 20086 insertions(+), 9079 deletions(-)

diff --git a/apidoc_config/Data/ClassHierarchy.nd b/apidoc_config/Data/ClassHierarchy.nd
index 0cb6547..5215dd3 100644
Binary files a/apidoc_config/Data/ClassHierarchy.nd and b/apidoc_config/Data/ClassHierarchy.nd differ
diff --git a/apidoc_config/Data/ConfigFileInfo.nd b/apidoc_config/Data/ConfigFileInfo.nd
index 02812b3..f4a435b 100644
Binary files a/apidoc_config/Data/ConfigFileInfo.nd and b/apidoc_config/Data/ConfigFileInfo.nd differ
diff --git a/apidoc_config/Data/FileInfo.nd b/apidoc_config/Data/FileInfo.nd
index 36b477d..5111c71 100644
--- a/apidoc_config/Data/FileInfo.nd
+++ b/apidoc_config/Data/FileInfo.nd
@@ -1,313 +1,323 @@
-1.52
+1.51
 JavaScript
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/MultiLineString.js	1340830591	1	OpenLayers.Geometry.MultiLineString
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/cs-CZ.js	1340830591	1	OpenLayers.Lang["cs-CZ"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Pan.js	1340830591	1	OpenLayers.Control.Pan
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/KaMap.js	1340830591	1	OpenLayers.Layer.KaMap
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Scale.js	1340830591	1	OpenLayers.Control.Scale
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/FixedZoomLevels.js	1340830591	1	OpenLayers.Layer.FixedZoomLevels
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/SelectFeature.js	1340830591	1	OpenLayers.Control.SelectFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.WPSCapabilities.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ModifyFeature.js	1340830591	1	OpenLayers.Control.ModifyFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tween.js	1340830591	1	OpenLayers.Tween
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Style.js	1340830591	1	OpenLayers.Style
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD.js	1340830591	1	OpenLayers.Format.SLD
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/Framed.js	1340830591	1	OpenLayers.Popup.Framed
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Marker/Box.js	1340830591	1	OpenLayers.Marker.Box
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1.js	1340830591	1	OpenLayers.Format.WMSCapabilities.v1_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetDomain.js	1340830591	1	OpenLayers.Format.CSWGetDomain
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy.js	1340830591	1	OpenLayers.Strategy
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS/v1.js	1340830591	1	OpenLayers.Protocol.WFS.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/HTTPRequest.js	1340830591	1	OpenLayers.Layer.HTTPRequest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Geolocate.js	1340830591	1	OpenLayers.Control.Geolocate
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup.js	1340830591	1	OpenLayers.Popup
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/HTTP.js	1340830591	1	OpenLayers.Protocol.HTTP
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/zh-CN.js	1340830591	1	OpenLayers.Lang["zh-CN"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/CSW.js	1340830591	1	OpenLayers.Protocol.CSW
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/DragPan.js	1340830591	1	OpenLayers.Control.DragPan
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Events/buttonclick.js	1340830591	1	OpenLayers.Events.buttonclick
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.WMTSCapabilities.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format.js	1340830591	1	OpenLayers.Format
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GeoJSON.js	1340830591	1	OpenLayers.Format.GeoJSON
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/gl.js	1340830591	1	OpenLayers.Lang["gl"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/QueryStringFilter.js	1340830591	1	OpenLayers.Format.QueryStringFilter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Keyboard.js	1340830591	1	OpenLayers.handler.Keyboard
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ca.js	1340830591	1	OpenLayers.Lang["ca"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/OverviewMap.js	1340830591	1	OpenLayers.Control.OverviewMap
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSCapabilities.js	1340830591	1	OpenLayers.Format.SOSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control.js	1340830591	1	OpenLayers.Control
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST/v1_1_0.js	1340830591	1	OpenLayers.Format.WFST.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/PointTrack.js	1340830591	1	OpenLayers.Layer.PointTrack
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/Elements.js	1340830591	1	OpenLayers.ElementsIndexer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Icon.js	1340830591	1	OpenLayers.Icon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/WMTS.js	1340830591	1	OpenLayers.Layer.WMTS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Path.js	1340830591	1	OpenLayers.Handler.Path
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/TMS.js	1340830591	1	OpenLayers.Layer.TMS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGISCache.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGISCache.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nl.js	1340830591	1	OpenLayers.Lang["nl"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OGCExceptionReport.js	1340830591	1	OpenLayers.Format.OGCExceptionReport
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Grid.js	1340830591	1	OpenLayers.Layer.Grid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/SOS.js	1340830591	1	OpenLayers.Protocol.SOS.DEFAULTS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ru.js	1340830591	1	OpenLayers.Lang["ru"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1.js	1340830591	1	OpenLayers.Format.WMSCapabilities.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon/v1.js	1340830591	1	OpenLayers.Format.OWSCommon.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/Image.js	1340830591	1	OpenLayers.Tile.Image
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomPanel.js	1340830591	1	OpenLayers.Control.ZoomPanel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/da-DK.js	1340830591	1	OpenLayers.Lang["da-DK"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS.js	1340830591	1	OpenLayers.Protocol.WFS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/NavigationHistory.js	1340830591	1	OpenLayers.Control.NavigationHistory
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Boxes.js	1340830591	1	OpenLayers.Layer.Boxes
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/MousePosition.js	1340830591	1	OpenLayers.Control.MousePosition
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC.js	1340830591	1	OpenLayers.Format.WMC
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon/v1_1_0.js	1340830591	1	OpenLayers.Format.OWSCommon.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/Image/IFrame.js	1340830591	1	OpenLayers.Tile.Image.IFrame
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/Anchored.js	1340830591	1	OpenLayers.Popup.Anchored
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS/v1_1_0.js	1340830591	1	OpenLayers.Protocol.WFS.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ScaleLine.js	1340830591	1	OpenLayers.Control.ScaleLine
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Bounds.js	1340830591	1	OpenLayers.Bounds
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Save.js	1340830591	1	OpenLayers.Strategy.Save
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/vi.js	1340830591	1	OpenLayers.Lang["vi"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Snapping.js	1340830591	1	OpenLayers.Control.Snapping
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang.js	1340830591	1	OpenLayers.Lang
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon.js	1340830591	1	OpenLayers.Format.OWSCommon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/es.js	1340830591	1	OpenLayers.Lang["es"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Events.js	1340830591	1	OpenLayers.Event
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers.js	1340830591	1	OpenLayers
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/PointGrid.js	1340830591	1	OpenLayers.Layer.PointGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/SphericalMercator.js	1340830591	1	OpenLayers.Layer.SphericalMercator
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/bg.js	1340830591	1	OpenLayers.Lang["bg"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSContext/v0_3_1.js	1340830591	1	OpenLayers.Format.OWSContext.v0_3_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Vector.js	1340830591	1	OpenLayers.Layer.Vector
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_3.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_3
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PanZoom.js	1340830591	1	OpenLayers.Control.PanZoom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD/v1.js	1340830591	1	OpenLayers.Format.SLD.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS/v1_0_0.js	1340830591	1	OpenLayers.Protocol.WFS.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/fur.js	1340830591	1	OpenLayers.Lang["fur"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/de.js	1340830591	1	OpenLayers.Lang["de"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/GetFeature.js	1340830591	1	OpenLayers.Control.GetFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFS.js	1340830591	1	OpenLayers.Format.WFS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Attribution.js	1340830591	1	OpenLayers.Control.Attribution
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities.js	1340830591	1	OpenLayers.Format.WFSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomOut.js	1340830591	1	OpenLayers.Control.ZoomOut
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes.js	1340830591	1	OpenLayers Base Types
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/TransformFeature.js	1340830591	1	OpenLayers.Control.TransformFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Atom.js	1340830591	1	OpenLayers.Format.Atom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/id.js	1340830591	1	OpenLayers.Lang["id"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry.js	1340830591	1	OpenLayers.Geometry
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/UTFGrid.js	1340830591	1	OpenLayers.Control.UTFGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Refresh.js	1340830591	1	OpenLayers.Strategy.Refresh
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Permalink.js	1340830591	1	OpenLayers.Control.Permalink
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/CSW/v2_0_2.js	1340830591	1	OpenLayers.Protocol.CSW.v2_0_2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/SOS/v1_0_0.js	1340830591	1	OpenLayers.Protocol.SOS.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/oc.js	1340830591	1	OpenLayers.Lang["oc"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_3_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/BBOX.js	1340830591	1	OpenLayers.Strategy.BBOX
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/pt.js	1340830591	1	OpenLayers.Lang["pt"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSCapabilities.js	1340830591	1	OpenLayers.Format.WPSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js	1340830591	1	OpenLayers.Format.SLD/v1_0_0_GeoServer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/SLDSelect.js	1340830591	1	OpenLayers.Control.SLDSelect
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Map.js	1340830591	1	OpenLayers.Map
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer.js	1340830591	1	OpenLayers.Symbolizer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/MapServer.js	1340830591	1	OpenLayers.Layer.MapServer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Style2.js	1340830591	1	OpenLayers.Style2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGIS93Rest.js	1340830591	1	OpenLayers.Layer.ArcGIS93Rest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/UTFGrid.js	1340830591	1	OpenLayers.Layer.UTFGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSDescribeProcess.js	1340830591	1	OpenLayers.Format.WPSDescribeProcess
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/hr.js	1340830591	1	OpenLayers.Lang["hr"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomBox.js	1340830591	1	OpenLayers.Control.ZoomBox
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMTSCapabilities.js	1340830591	1	OpenLayers.Format.WMTSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter/v1_1_0.js	1340830591	1	OpenLayers.Format.Filter.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/en-CA.js	1340830591	1	OpenLayers.Lang["en-CA"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Marker.js	1340830591	1	OpenLayers.Marker
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSContext.js	1340830591	1	OpenLayers.Format.OWSContext
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities/v1.js	1340830591	1	OpenLayers.Format.WFSCapabilities.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/StyleMap.js	1340830591	1	OpenLayers.StyleMap
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XLS/v1_1_0.js	1340830591	1	OpenLayers.Format.XLS.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Console.js	1340830591	1	OpenLayers.Console
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Box.js	1340830591	1	OpenLayers.Handler.Box
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/OSM.js	1340830591	1	OpenLayers.Layer.OSM
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GeoRSS.js	1340830591	1	OpenLayers.Format.GeoRSS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/gsw.js	1340830591	1	OpenLayers.Lang["gsw"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/LinearRing.js	1340830591	1	OpenLayers.Geometry.LinearRing
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSGetObservation.js	1340830591	1	OpenLayers.Format.SOSGetObservation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Comparison.js	1340830591	1	OpenLayers.Filter.Comparison
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Spherical.js	1340830591	1	Spherical
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ar.js	1340830591	1	OpenLayers.Lang["ar"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Collection.js	1340830591	1	OpenLayers.Geometry.Collection
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WCSGetCoverage.js	1340830591	1	OpenLayers.Format.WCSGetCoverage version 1.1.0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter.js	1340830591	1	OpenLayers.Filter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PanPanel.js	1340830591	1	OpenLayers.Control.PanPanel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google.js	1340830591	1	OpenLayers.Layer.Google
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/KaMapCache.js	1340830591	1	OpenLayers.Layer.KaMapCache
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Polygon.js	1340830591	1	OpenLayers.Geometry.Polygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Split.js	1340830591	1	OpenLayers.Control.Split
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/JSON.js	1340830591	1	OpenLayers.Format.JSON
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Image.js	1340830591	1	OpenLayers.Layer.Image
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Click.js	1340830591	1	OpenLayers.Handler.Click
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Spatial.js	1340830591	1	OpenLayers.Filter.Spatial
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Pinch.js	1340830591	1	OpenLayers.Handler.Pinch
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Function.js	1340830591	1	OpenLayers.Filter.Function
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/FramedCloud.js	1340830591	1	OpenLayers.Popup.FramedCloud
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Kinetic.js	1340830591	1	OpenLayers.Kinetic
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter/v1_0_0.js	1340830591	1	OpenLayers.Format.Filter.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomToMaxExtent.js	1340830591	1	OpenLayers.Control.ZoomToMaxExtent
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OSM.js	1340830591	1	OpenLayers.Format.OSM
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetRecords.js	1340830591	1	OpenLayers.Format.CSWGetRecords
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/EventPane.js	1340830591	1	OpenLayers.Layer.EventPane
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js	1340830591	1	OpenLayers.Format.WMSDescribeLayer.v1_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/Script.js	1340830591	1	OpenLayers.Protocol.Script
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Zoom.js	1340830591	1	OpenLayers.Control.Zoom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Context.js	1340830591	1	OpenLayers.Format.Context
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Line.js	1340830591	1	OpenLayers.Symbolizer.Line
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/it.js	1340830591	1	OpenLayers.Lang["it"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/lt.js	1340830591	1	OpenLayers.Lang["lt"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/DragFeature.js	1340830591	1	OpenLayers.Control.DragFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML.js	1340830591	1	OpenLayers.Format.GML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSDescribeFeatureType.js	1340830591	1	OpenLayers.Format.WFSDescribeFeatureType
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google/v3.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google/v3.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/zh-TW.js	1340830591	1	OpenLayers.Lang["zh-TW"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon/v1_0_0.js	1340830591	1	OpenLayers.Format.OWSCommon.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/hsb.js	1340830591	1	OpenLayers.Lang["hsb"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js	1340830591	1	OpenLayers.Format.WFSCapabilities/v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/WMSGetFeatureInfo.js	1340830591	1	OpenLayers.Control.WMSGetFeatureInfo
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Measure.js	1340830591	1	OpenLayers.Control.Measure
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/pl.js	1340830591	1	OpenLayers.Lang["pl"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CQL.js	1340830591	1	OpenLayers.Format.CQL
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Size.js	1340830591	1	OpenLayers.Size
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Text.js	1340830591	1	OpenLayers.Symbolizer.Text
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_1_1_WMSC
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js	1340830591	1	OpenLayers.Format.CSWGetRecords.v2_0_2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/hu.js	1340830591	1	OpenLayers.Lang["hu"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST/v1_0_0.js	1340830591	1	OpenLayers.Format.WFST.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/EditingToolbar.js	1340830591	1	OpenLayers.Control.EditingToolbar
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Hover.js	1340830591	1	OpenLayers.Handler.Hover
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/MultiPolygon.js	1340830591	1	OpenLayers.Geometry.MultiPolygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Text.js	1340830591	1	OpenLayers.Layer.Text
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/GeoRSS.js	1340830591	1	OpenLayers.Layer.GeoRSS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Request.js	1340830591	1	OpenLayers.Request
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ArgParser.js	1340830591	1	OpenLayers.Control.ArgParser
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Cluster.js	1340830591	1	OpenLayers.Strategy.Cluster
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/LineString.js	1340830591	1	OpenLayers.Geometry.LineString
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/en.js	1340830591	1	OpenLayers.Lang["en"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/el.js	1340830591	1	OpenLayers.Lang["el"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSDescribeLayer.js	1340830591	1	OpenLayers.Format.WMSDescribeLayer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Projection.js	1340830591	1	OpenLayers.Projection
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js	1340830591	1	OpenLayers.Format.CSWGetDomain.v2_0_2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Curve.js	1340830591	1	OpenLayers.Geometry.Curve
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Date.js	1340830591	1	OpenLayers.Date
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/RegularPolygon.js	1340830591	1	OpenLayers.Handler.RegularPolygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcIMS.js	1340830591	1	OpenLayers.Layer.ArcIMS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/deprecated.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/deprecated.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/CacheRead.js	1340830591	1	OpenLayers.Control.CacheRead
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebugx.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebugx.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Markers.js	1340830591	1	OpenLayers.Layer.Markers
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WKT.js	1340830591	1	OpenLayers.Format.WKT
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/FeatureId.js	1340830591	1	OpenLayers.Filter.FeatureId
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/license.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/license.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/VML.js	1340830591	1	OpenLayers.Renderer.VML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Paging.js	1340830591	1	OpenLayers.Strategy.Paging
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomIn.js	1340830591	1	OpenLayers.Control.ZoomIn
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ksh.js	1340830591	1	OpenLayers.Lang["ksh"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GPX.js	1340830591	1	OpenLayers.Format.GPX
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Corner.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Corner.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler.js	1340830591	1	OpenLayers.Handler
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/pt-BR.js	1340830591	1	OpenLayers.Lang["pt-br"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/MapGuide.js	1340830591	1	OpenLayers.Layer.MapGuide
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Polygon.js	1340830591	1	OpenLayers.Symbolizer.Polygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XLS.js	1340830591	1	OpenLayers.Format.XLS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Feature.js	1340830591	1	OpenLayers.Handler.Feature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML/v3.js	1340830591	1	OpenLayers.Format.GML.v3
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/MouseWheel.js	1340830591	1	OpenLayers.Handler.MouseWheel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/te.js	1340830591	1	OpenLayers.Lang["te"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/br.js	1340830591	1	OpenLayers.Lang["br"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Filter.js	1340830591	1	OpenLayers.Strategy.Filter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Class.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Class.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_1_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/be-tarask.js	1340830591	1	OpenLayers.Lang["be-tarask"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Point.js	1340830591	1	OpenLayers.Geometry.Point
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Graticule.js	1340830591	1	OpenLayers.Control.Graticule
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/KeyboardDefaults.js	1340830591	1	OpenLayers.Control.KeyboardDefaults
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/ArcXML/Features.js	1340830591	1	OpenLayers.Format.ArcXML.Features
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer.js	1340830591	1	OpenLayers.Renderer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/fr.js	1340830591	1	OpenLayers.Lang["fr"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/ArcXML.js	1340830591	1	OpenLayers.Format.ArcXML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/is.js	1340830591	1	OpenLayers.Lang["is"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile.js	1340830591	1	OpenLayers.Tile
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/SingleFile.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/SingleFile.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XML/VersionedOGC.js	1340830591	1	OpenLayers.Format.XML.VersionedOGC
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/km.js	1340830591	1	OpenLayers.Lang["km"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/UTFGrid.js	1340830591	1	OpenLayers.Tile.UTFGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Point.js	1340830591	1	OpenLayers.Symbolizer.Point
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML/v2.js	1340830591	1	OpenLayers.Format.GML.v2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/LonLat.js	1340830591	1	OpenLayers.LonLat
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/TouchNavigation.js	1340830591	1	OpenLayers.Control.TouchNavigation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/DrawFeature.js	1340830591	1	OpenLayers.Control.DrawFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Feature/Vector.js	1340830591	1	OpenLayers.Feature.Vector
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ia.js	1340830591	1	OpenLayers.Lang["ia"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XLS/v1.js	1340830591	1	OpenLayers.Format.XLS.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter.js	1340830591	1	OpenLayers.Format.Filter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/CacheWrite.js	1340830591	1	OpenLayers.Control.CacheWrite
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC/v1.js	1340830591	1	OpenLayers.Format.WMC.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Polygon.js	1340830591	1	OpenLayers.Handler.Polygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Button.js	1340830591	1	OpenLayers.Control.Button
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js	1340830591	1	OpenLayers.Format.SOSGetFeatureOfInterest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Pixel.js	1340830591	1	OpenLayers.Pixel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/NavToolbar.js	1340830591	1	OpenLayers.Control.NavToolbar
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter/v1.js	1340830591	1	OpenLayers.Format.Filter.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/sv-SE.js	1340830591	1	OpenLayers.Lang["sv"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Drag.js	1340830591	1	OpenLayers.Handler.Drag
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Request/XMLHttpRequest.js	1340830591	1	OpenLayers.Request.XMLHttpRequest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Color.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Color.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Fixed.js	1340830591	1	OpenLayers.Strategy.Fixed
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/KML.js	1340830591	1	OpenLayers.Format.KML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Feature.js	1340830591	1	OpenLayers.Feature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Util.js	1340830591	1	Util
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/Canvas.js	1340830591	1	OpenLayers.Renderer.Canvas
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PanZoomBar.js	1340830591	1	OpenLayers.Control.PanZoomBar
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebug.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebug.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSGetFeatureInfo.js	1340830591	1	OpenLayers.Format.WMSGetFeatureInfo
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PinchZoom.js	1340830591	1	OpenLayers.Control.PinchZoom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST.js	1340830591	1	OpenLayers.Format.WFST.DEFAULTS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Rule.js	1340830591	1	OpenLayers.Rule
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC/v1_0_0.js	1340830591	1	OpenLayers.Format.WMC.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.WFSCapabilities/v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/AnchoredBubble.js	1340830591	1	OpenLayers.Popup.AnchoredBubble
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities.js	1340830591	1	OpenLayers.Format.WMSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Bing.js	1340830591	1	OpenLayers.Layer.Bing
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer.js	1340830591	1	OpenLayers.Layer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol.js	1340830591	1	OpenLayers.Protocol
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Logical.js	1340830591	1	OpenLayers.Filter.Logical
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Element.js	1340830591	1	OpenLayers.Element
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/WMS.js	1340830591	1	OpenLayers.Layer.WMS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/sk.js	1340830591	1	OpenLayers.Lang["sk"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nb.js	1340830591	1	OpenLayers.Lang["nb"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.SOSCapabilities.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/WorldWind.js	1340830591	1	OpenLayers.Layer.WorldWind
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC/v1_1_0.js	1340830591	1	OpenLayers.Format.WMC.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/MultiPoint.js	1340830591	1	OpenLayers.Geometry.MultiPoint
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Zoomify.js	1340830591	1	OpenLayers.Layer.Zoomify
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Vector/RootContainer.js	1340830591	1	OpenLayers.Layer.Vector.RootContainer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Point.js	1340830591	1	OpenLayers.Handler.Point
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/LayerSwitcher.js	1340830591	1	OpenLayers.Control.LayerSwitcher
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nds.js	1340830591	1	OpenLayers.Lang["nds"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/TileCache.js	1340830591	1	OpenLayers.Layer.TileCache
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/XYZ.js	1340830591	1	OpenLayers.Layer.XYZ
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Animation.js	1340830591	1	OpenLayers.Animation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML/Base.js	1340830591	1	OpenLayers.Format.GML.Base
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/io.js	1340830591	1	OpenLayers.Lang["io"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/readme.txt	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/readme.txt
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Navigation.js	1340830591	1	OpenLayers.Control.Navigation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ja.js	1340830591	1	OpenLayers.Lang["ja"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/WMTSGetFeatureInfo.js	1340830591	1	OpenLayers.Control.WMTSGetFeatureInfo
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Text.js	1340830591	1	OpenLayers.Format.Text
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nn.js	1340830591	1	OpenLayers.Lang["nn"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Panel.js	1340830591	1	OpenLayers.Control.Panel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/license.txt	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/license.txt
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSExecute.js	1340830591	1	OpenLayers.Format.WPSExecute version 1.0.0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD/v1_0_0.js	1340830591	1	OpenLayers.Format.SLD.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/SVG.js	1340830591	1	OpenLayers.Renderer.SVG
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST/v1.js	1340830591	1	OpenLayers.Format.WFST.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XML.js	1340830591	1	OpenLayers.Format.XML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/fi.js	1340830591	1	OpenLayers.Lang["fi"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Raster.js	1340830591	1	OpenLayers.Symbolizer.Raster
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/WMS.js	1371470639	1	OpenLayers.Layer.WMS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/license.txt	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/license.txt
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js	1371470639	1	OpenLayers.Format.WMSDescribeLayer.v1_1_1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSContext.js	1371470639	1	OpenLayers.Format.OWSContext
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XML.js	1371470639	1	OpenLayers.Format.XML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js	1371470639	1	OpenLayers.Format.WFSCapabilities/v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/km.js	1371470639	1	OpenLayers.Lang["km"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XLS.js	1371470639	1	OpenLayers.Format.XLS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/DrawFeature.js	1371470639	1	OpenLayers.Control.DrawFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC.js	1371470639	1	OpenLayers.Format.WMC
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML/v3.js	1371470639	1	OpenLayers.Format.GML.v3
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Vector/RootContainer.js	1371470639	1	OpenLayers.Layer.Vector.RootContainer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Markers.js	1371470639	1	OpenLayers.Layer.Markers
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer.js	1371470639	1	OpenLayers.Layer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS.js	1371470639	1	OpenLayers.Protocol.WFS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/DragPan.js	1371470639	1	OpenLayers.Control.DragPan
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Feature.js	1371470639	1	OpenLayers.Handler.Feature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WMTSCapabilities.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomPanel.js	1371470639	1	OpenLayers.Control.ZoomPanel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/fi.js	1371470639	1	OpenLayers.Lang["fi"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OSM.js	1371470639	1	OpenLayers.Format.OSM
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/WPSClient.js	1371470639	1	OpenLayers.WPSClient
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Button.js	1371470639	1	OpenLayers.Control.Button
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST/v1_0_0.js	1371470639	1	OpenLayers.Format.WFST.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/NavToolbar.js	1371470639	1	OpenLayers.Control.NavToolbar
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XML/VersionedOGC.js	1371470639	1	OpenLayers.Format.XML.VersionedOGC
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/LineString.js	1371470639	1	OpenLayers.Geometry.LineString
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter.js	1371470639	1	OpenLayers.Filter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_3.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_3
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/KaMap.js	1371470639	1	OpenLayers.Layer.KaMap
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/CacheRead.js	1371470639	1	OpenLayers.Control.CacheRead
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS/v1_0_0.js	1371470639	1	OpenLayers.Protocol.WFS.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Icon.js	1371470639	1	OpenLayers.Icon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/ArcXML.js	1371470639	1	OpenLayers.Format.ArcXML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/NavigationHistory.js	1371470639	1	OpenLayers.Control.NavigationHistory
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Point.js	1371470639	1	OpenLayers.Handler.Point
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/WMTS.js	1371470639	1	OpenLayers.Layer.WMTS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Filter.js	1371470639	1	OpenLayers.Strategy.Filter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSDescribeProcess.js	1371470639	1	OpenLayers.Format.WPSDescribeProcess
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Console.js	1371470639	1	OpenLayers.Console
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/es.js	1371470639	1	OpenLayers.Lang["es"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nb.js	1371470639	1	OpenLayers.Lang["nb"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Logical.js	1371470639	1	OpenLayers.Filter.Logical
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities/v1.js	1371470639	1	OpenLayers.Format.WFSCapabilities.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/br.js	1371470639	1	OpenLayers.Lang["br"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon/v1.js	1371470639	1	OpenLayers.Format.OWSCommon.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PanZoomBar.js	1371470639	1	OpenLayers.Control.PanZoomBar
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/LonLat.js	1371470639	1	OpenLayers.LonLat
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcIMS.js	1371470639	1	OpenLayers.Layer.ArcIMS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML/v2.js	1371470639	1	OpenLayers.Format.GML.v2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebug.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebug.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGIS93Rest.js	1371470639	1	OpenLayers.Layer.ArcGIS93Rest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/MultiLineString.js	1371470639	1	OpenLayers.Geometry.MultiLineString
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/UTFGrid.js	1371470639	1	OpenLayers.Tile.UTFGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Split.js	1371470639	1	OpenLayers.Control.Split
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/SingleFile.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/SingleFile.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Style2.js	1371470639	1	OpenLayers.Style2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler.js	1371470639	1	OpenLayers.Handler
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry.js	1371470639	1	OpenLayers.Geometry
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/sv-SE.js	1371470639	1	OpenLayers.Lang["sv"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Rule.js	1371470639	1	OpenLayers.Rule
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/fr.js	1371470639	1	OpenLayers.Lang["fr"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter/v1_0_0.js	1371470639	1	OpenLayers.Format.Filter.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/cs-CZ.js	1371470639	1	OpenLayers.Lang["cs-CZ"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Grid.js	1371470639	1	OpenLayers.Layer.Grid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google.js	1371470639	1	OpenLayers.Layer.Google
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/DragFeature.js	1371470639	1	OpenLayers.Control.DragFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Pinch.js	1371470639	1	OpenLayers.Handler.Pinch
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter/v1.js	1371470639	1	OpenLayers.Format.Filter.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format.js	1371470639	1	OpenLayers.Format
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/CacheWrite.js	1371470639	1	OpenLayers.Control.CacheWrite
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/TileCache.js	1371470639	1	OpenLayers.Layer.TileCache
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/SOS.js	1371470639	1	OpenLayers.Protocol.SOS.DEFAULTS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/it.js	1371470639	1	OpenLayers.Lang["it"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/GeoRSS.js	1371470639	1	OpenLayers.Layer.GeoRSS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities.js	1371470639	1	OpenLayers.Format.WMSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/BBOX.js	1371470639	1	OpenLayers.Strategy.BBOX
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/en-CA.js	1371470639	1	OpenLayers.Lang["en-CA"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon/v1_1_0.js	1371470639	1	OpenLayers.Format.OWSCommon.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Pan.js	1371470639	1	OpenLayers.Control.Pan
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Feature/Vector.js	1371470639	1	OpenLayers.Feature.Vector
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Zoom.js	1371470639	1	OpenLayers.Control.Zoom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Polygon.js	1371470639	1	OpenLayers.Symbolizer.Polygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSGetObservation.js	1371470639	1	OpenLayers.Format.SOSGetObservation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/EncodedPolyline.js	1371470639	1	OpenLayers.Format.EncodedPolyline
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSCapabilities.js	1371470639	1	OpenLayers.Format.SOSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/KML.js	1371470639	1	OpenLayers.Format.KML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GPX.js	1371470639	1	OpenLayers.Format.GPX
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ia.js	1371470639	1	OpenLayers.Lang["ia"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WFSCapabilities/v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/MultiPolygon.js	1371470639	1	OpenLayers.Geometry.MultiPolygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Attribution.js	1371470639	1	OpenLayers.Control.Attribution
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google/v3.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google/v3.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/Canvas.js	1371470639	1	OpenLayers.Renderer.Canvas
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CQL.js	1371470639	1	OpenLayers.Format.CQL
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ro.js	1371470639	1	OpenLayers.Lang["ro"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGISCache.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGISCache.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST.js	1371470639	1	OpenLayers.Format.WFST.DEFAULTS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD/v1_0_0.js	1371470639	1	OpenLayers.Format.SLD.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GeoJSON.js	1371470639	1	OpenLayers.Format.GeoJSON
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/CSW/v2_0_2.js	1371470639	1	OpenLayers.Protocol.CSW.v2_0_2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD/v1.js	1371470639	1	OpenLayers.Format.SLD.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_3_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Util/vendorPrefix.js	1371470639	1	OpenLayers.Util.vendorPrefix
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/JSON.js	1371470639	1	OpenLayers.Format.JSON
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST/v1_1_0.js	1371470639	1	OpenLayers.Format.WFST.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Refresh.js	1371470639	1	OpenLayers.Strategy.Refresh
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/WPSProcess.js	1371470639	1	OpenLayers.WPSProcess
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ca.js	1371470639	1	OpenLayers.Lang["ca"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/zh-TW.js	1371470639	1	OpenLayers.Lang["zh-TW"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/HTTPRequest.js	1371470639	1	OpenLayers.Layer.HTTPRequest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Function.js	1371470639	1	OpenLayers.Filter.Function
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSDescribeLayer.js	1371470639	1	OpenLayers.Format.WMSDescribeLayer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WKT.js	1371470639	1	OpenLayers.Format.WKT
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFS.js	1371470639	1	OpenLayers.Format.WFS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/be-tarask.js	1371470639	1	OpenLayers.Lang["be-tarask"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/zh-CN.js	1371470639	1	OpenLayers.Lang["zh-CN"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Events.js	1371470639	1	OpenLayers.Event
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Raster.js	1371470639	1	OpenLayers.Symbolizer.Raster
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/SphericalMercator.js	1371470639	1	OpenLayers.Layer.SphericalMercator
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Boxes.js	1371470639	1	OpenLayers.Layer.Boxes
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/LinearRing.js	1371470639	1	OpenLayers.Geometry.LinearRing
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMTSCapabilities.js	1371470639	1	OpenLayers.Format.WMTSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomBox.js	1371470639	1	OpenLayers.Control.ZoomBox
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Map.js	1371470639	1	OpenLayers.Map
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/PointGrid.js	1371470639	1	OpenLayers.Layer.PointGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/PointTrack.js	1371470639	1	OpenLayers.Layer.PointTrack
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Request/XMLHttpRequest.js	1371470639	1	OpenLayers.Request.XMLHttpRequest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Drag.js	1371470639	1	OpenLayers.Handler.Drag
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/MultiPoint.js	1371470639	1	OpenLayers.Geometry.MultiPoint
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/hsb.js	1371470639	1	OpenLayers.Lang["hsb"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ja.js	1371470639	1	OpenLayers.Lang["ja"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Feature.js	1371470639	1	OpenLayers.Feature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/gsw.js	1371470639	1	OpenLayers.Lang["gsw"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Bounds.js	1371470639	1	OpenLayers.Bounds
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js	1371470639	1	OpenLayers.Format.SLD/v1_0_0_GeoServer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/Elements.js	1371470639	1	OpenLayers.ElementsIndexer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/SOS/v1_0_0.js	1371470639	1	OpenLayers.Protocol.SOS.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities/v1.js	1371470639	1	OpenLayers.Format.WCSCapabilities.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC/v1_1_0.js	1371470639	1	OpenLayers.Format.WMC.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML.js	1371470639	1	OpenLayers.Format.GML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSGetFeatureInfo.js	1371470639	1	OpenLayers.Format.WMSGetFeatureInfo
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WPSCapabilities.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Request.js	1371470639	1	OpenLayers.Request
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomToMaxExtent.js	1371470639	1	OpenLayers.Control.ZoomToMaxExtent
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Box.js	1371470639	1	OpenLayers.Handler.Box
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Path.js	1371470639	1	OpenLayers.Handler.Path
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD.js	1371470639	1	OpenLayers.Format.SLD
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Point.js	1371470639	1	OpenLayers.Symbolizer.Point
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter.js	1371470639	1	OpenLayers.Format.Filter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_1_1_WMSC
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Marker.js	1371470639	1	OpenLayers.Marker
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ModifyFeature.js	1371470639	1	OpenLayers.Control.ModifyFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/io.js	1371470639	1	OpenLayers.Lang["io"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/EventPane.js	1371470639	1	OpenLayers.Layer.EventPane
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSContext/v0_3_1.js	1371470639	1	OpenLayers.Format.OWSContext.v0_3_1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomIn.js	1371470639	1	OpenLayers.Control.ZoomIn
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nl.js	1371470639	1	OpenLayers.Lang["nl"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/hu.js	1371470639	1	OpenLayers.Lang["hu"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Corner.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Corner.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSExecute.js	1371470639	1	OpenLayers.Format.WPSExecute version 1.0.0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Zoomify.js	1371470639	1	OpenLayers.Layer.Zoomify
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/MousePosition.js	1371470639	1	OpenLayers.Control.MousePosition
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang.js	1371470639	1	OpenLayers.Lang
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ArgParser.js	1371470639	1	OpenLayers.Control.ArgParser
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/lt.js	1371470639	1	OpenLayers.Lang["lt"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Color.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Color.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GeoRSS.js	1371470639	1	OpenLayers.Format.GeoRSS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Spatial.js	1371470639	1	OpenLayers.Filter.Spatial
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/fur.js	1371470639	1	OpenLayers.Lang["fur"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Class.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Class.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/TransformFeature.js	1371470639	1	OpenLayers.Control.TransformFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ru.js	1371470639	1	OpenLayers.Lang["ru"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/HTTP.js	1371470639	1	OpenLayers.Protocol.HTTP
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Panel.js	1371470639	1	OpenLayers.Control.Panel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST/v1.js	1371470639	1	OpenLayers.Format.WFST.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Cluster.js	1371470639	1	OpenLayers.Strategy.Cluster
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/TMS.js	1371470639	1	OpenLayers.Layer.TMS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ksh.js	1371470639	1	OpenLayers.Lang["ksh"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Line.js	1371470639	1	OpenLayers.Symbolizer.Line
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PinchZoom.js	1371470639	1	OpenLayers.Control.PinchZoom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1.js	1371470639	1	OpenLayers.Format.WMSCapabilities.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/RegularPolygon.js	1371470639	1	OpenLayers.Handler.RegularPolygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Hover.js	1371470639	1	OpenLayers.Handler.Hover
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nn.js	1371470639	1	OpenLayers.Lang["nn"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/OSM.js	1371470639	1	OpenLayers.Layer.OSM
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Vector.js	1371470639	1	OpenLayers.Layer.Vector
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/WorldWind.js	1371470639	1	OpenLayers.Layer.WorldWind
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Polygon.js	1371470639	1	OpenLayers.Handler.Polygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/is.js	1371470639	1	OpenLayers.Lang["is"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Bing.js	1371470639	1	OpenLayers.Layer.Bing
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/de.js	1371470639	1	OpenLayers.Lang["de"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Point.js	1371470639	1	OpenLayers.Geometry.Point
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon/v1_0_0.js	1371470639	1	OpenLayers.Format.OWSCommon.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/SLDSelect.js	1371470639	1	OpenLayers.Control.SLDSelect
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/XYZ.js	1371470639	1	OpenLayers.Layer.XYZ
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/el.js	1371470639	1	OpenLayers.Lang["el"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC/v1.js	1371470639	1	OpenLayers.Format.WMC.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Save.js	1371470639	1	OpenLayers.Strategy.Save
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Kinetic.js	1371470639	1	OpenLayers.Kinetic
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetRecords.js	1371470639	1	OpenLayers.Format.CSWGetRecords
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XLS/v1_1_0.js	1371470639	1	OpenLayers.Format.XLS.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Text.js	1371470639	1	OpenLayers.Symbolizer.Text
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities.js	1371470639	1	OpenLayers.Format.WFSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/oc.js	1371470639	1	OpenLayers.Lang["oc"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/KaMapCache.js	1371470639	1	OpenLayers.Layer.KaMapCache
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup/Framed.js	1371470639	1	OpenLayers.Popup.Framed
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/id.js	1371470639	1	OpenLayers.Lang["id"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Measure.js	1371470639	1	OpenLayers.Control.Measure
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Fixed.js	1371470639	1	OpenLayers.Strategy.Fixed
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer.js	1371470639	1	OpenLayers.Symbolizer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control.js	1371470639	1	OpenLayers.Control
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/hr.js	1371470639	1	OpenLayers.Lang["hr"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/EditingToolbar.js	1371470639	1	OpenLayers.Control.EditingToolbar
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Curve.js	1371470639	1	OpenLayers.Geometry.Curve
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers.js	1371470639	1	OpenLayers
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile.js	1371470639	1	OpenLayers.Tile
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Graticule.js	1371470639	1	OpenLayers.Control.Graticule
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/FeatureId.js	1371470639	1	OpenLayers.Filter.FeatureId
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/license.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/license.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/CSW.js	1371470639	1	OpenLayers.Protocol.CSW
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OGCExceptionReport.js	1371470639	1	OpenLayers.Format.OGCExceptionReport
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ar.js	1371470639	1	OpenLayers.Lang["ar"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/SelectFeature.js	1371470639	1	OpenLayers.Control.SelectFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Click.js	1371470639	1	OpenLayers.Handler.Click
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter/v1_1_0.js	1371470639	1	OpenLayers.Format.Filter.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/MapGuide.js	1371470639	1	OpenLayers.Layer.MapGuide
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomOut.js	1371470639	1	OpenLayers.Control.ZoomOut
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS/v1_1_0.js	1371470639	1	OpenLayers.Protocol.WFS.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/da-DK.js	1371470639	1	OpenLayers.Lang["da-DK"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Context.js	1371470639	1	OpenLayers.Format.Context
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol.js	1371470639	1	OpenLayers.Protocol
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/Script.js	1371470639	1	OpenLayers.Protocol.Script
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetDomain.js	1371470639	1	OpenLayers.Format.CSWGetDomain
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ScaleLine.js	1371470639	1	OpenLayers.Control.ScaleLine
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup/FramedCloud.js	1371470639	1	OpenLayers.Popup.FramedCloud
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/Image.js	1371470639	1	OpenLayers.Tile.Image
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nds.js	1371470639	1	OpenLayers.Lang["nds"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/SVG.js	1371470639	1	OpenLayers.Renderer.SVG
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Util.js	1371470639	1	Util
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_1_1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XLS/v1.js	1371470639	1	OpenLayers.Format.XLS.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js	1371470639	1	OpenLayers.Format.CSWGetDomain.v2_0_2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon.js	1371470639	1	OpenLayers.Format.OWSCommon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML/Base.js	1371470639	1	OpenLayers.Format.GML.Base
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Atom.js	1371470639	1	OpenLayers.Format.Atom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities.js	1371470639	1	OpenLayers.Format.WCSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy.js	1371470639	1	OpenLayers.Strategy
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/QueryStringFilter.js	1371470639	1	OpenLayers.Format.QueryStringFilter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/bg.js	1371470639	1	OpenLayers.Lang["bg"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/OverviewMap.js	1371470639	1	OpenLayers.Control.OverviewMap
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSCapabilities.js	1371470639	1	OpenLayers.Format.WPSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebugx.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebugx.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Comparison.js	1371470639	1	OpenLayers.Filter.Comparison
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js	1371470639	1	OpenLayers.Format.WCSCapabilities/v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup/Anchored.js	1371470639	1	OpenLayers.Popup.Anchored
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Scale.js	1371470639	1	OpenLayers.Control.Scale
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js	1371470639	1	OpenLayers.Format.SOSGetFeatureOfInterest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/deprecated.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/deprecated.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WCSCapabilities/v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/ArcXML/Features.js	1371470639	1	OpenLayers.Format.ArcXML.Features
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tween.js	1371470639	1	OpenLayers.Tween
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSDescribeFeatureType.js	1371470639	1	OpenLayers.Format.WFSDescribeFeatureType
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Marker/Box.js	1371470639	1	OpenLayers.Marker.Box
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/pt-BR.js	1371470639	1	OpenLayers.Lang["pt-br"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/KeyboardDefaults.js	1371470639	1	OpenLayers.Control.KeyboardDefaults
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/en.js	1371470639	1	OpenLayers.Lang["en"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Style.js	1371470639	1	OpenLayers.Style
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Date.js	1371470639	1	OpenLayers.Date
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Paging.js	1371470639	1	OpenLayers.Strategy.Paging
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/GetFeature.js	1371470639	1	OpenLayers.Control.GetFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/UTFGrid.js	1371470639	1	OpenLayers.Control.UTFGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/MapServer.js	1371470639	1	OpenLayers.Layer.MapServer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/sk.js	1371470639	1	OpenLayers.Lang["sk"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Projection.js	1371470639	1	OpenLayers.Projection
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Polygon.js	1371470639	1	OpenLayers.Geometry.Polygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/pt.js	1371470639	1	OpenLayers.Lang["pt"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/StyleMap.js	1371470639	1	OpenLayers.StyleMap
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Events/featureclick.js	1371470639	1	OpenLayers.Events.featureclick
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Text.js	1371470639	1	OpenLayers.Layer.Text
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Image.js	1371470639	1	OpenLayers.Layer.Image
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSGetCoverage.js	1371470639	1	OpenLayers.Format.WCSGetCoverage version 1.1.0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Keyboard.js	1371470639	1	OpenLayers.handler.Keyboard
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PanPanel.js	1371470639	1	OpenLayers.Control.PanPanel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.SOSCapabilities.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/vi.js	1371470639	1	OpenLayers.Lang["vi"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Events/buttonclick.js	1371470639	1	OpenLayers.Events.buttonclick
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PanZoom.js	1371470639	1	OpenLayers.Control.PanZoom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/WMTSGetFeatureInfo.js	1371470639	1	OpenLayers.Control.WMTSGetFeatureInfo
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Snapping.js	1371470639	1	OpenLayers.Control.Snapping
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/gl.js	1371470639	1	OpenLayers.Lang["gl"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup.js	1371470639	1	OpenLayers.Popup
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Navigation.js	1371470639	1	OpenLayers.Control.Navigation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Size.js	1371470639	1	OpenLayers.Size
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/TouchNavigation.js	1371470639	1	OpenLayers.Control.TouchNavigation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js	1371470639	1	OpenLayers.Format.CSWGetRecords.v2_0_2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/LayerSwitcher.js	1371470639	1	OpenLayers.Control.LayerSwitcher
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/WMSGetFeatureInfo.js	1371470639	1	OpenLayers.Control.WMSGetFeatureInfo
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Geolocate.js	1371470639	1	OpenLayers.Control.Geolocate
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Spherical.js	1371470639	1	Spherical
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/MouseWheel.js	1371470639	1	OpenLayers.Handler.MouseWheel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/UTFGrid.js	1371470639	1	OpenLayers.Layer.UTFGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS/v1.js	1371470639	1	OpenLayers.Protocol.WFS.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Element.js	1371470639	1	OpenLayers.Element
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Text.js	1371470639	1	OpenLayers.Format.Text
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/te.js	1371470639	1	OpenLayers.Lang["te"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/Image/IFrame.js	1371470639	1	OpenLayers.Tile.Image.IFrame
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/pl.js	1371470639	1	OpenLayers.Lang["pl"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Animation.js	1371470639	1	OpenLayers.Animation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Collection.js	1371470639	1	OpenLayers.Geometry.Collection
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/VML.js	1371470639	1	OpenLayers.Renderer.VML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes.js	1371470639	1	OpenLayers Base Types
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Permalink.js	1371470639	1	OpenLayers.Control.Permalink
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/readme.txt	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/readme.txt
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/TileManager.js	1371470639	1	OpenLayers.TileManager
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/FixedZoomLevels.js	1371470639	1	OpenLayers.Layer.FixedZoomLevels
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC/v1_0_0.js	1371470639	1	OpenLayers.Format.WMC.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer.js	1371470639	1	OpenLayers.Renderer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Pixel.js	1371470639	1	OpenLayers.Pixel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1.js	1371470639	1	OpenLayers.Format.WMSCapabilities.v1_1
diff --git a/apidoc_config/Data/ImageFileInfo.nd b/apidoc_config/Data/ImageFileInfo.nd
index 3db5561..0543a16 100644
Binary files a/apidoc_config/Data/ImageFileInfo.nd and b/apidoc_config/Data/ImageFileInfo.nd differ
diff --git a/apidoc_config/Data/ImageReferenceTable.nd b/apidoc_config/Data/ImageReferenceTable.nd
index 7fce56c..0155f0d 100644
Binary files a/apidoc_config/Data/ImageReferenceTable.nd and b/apidoc_config/Data/ImageReferenceTable.nd differ
diff --git a/apidoc_config/Data/IndexInfo.nd b/apidoc_config/Data/IndexInfo.nd
index 1501dd4..e4dfc9e 100644
Binary files a/apidoc_config/Data/IndexInfo.nd and b/apidoc_config/Data/IndexInfo.nd differ
diff --git a/apidoc_config/Data/PreviousMenuState.nd b/apidoc_config/Data/PreviousMenuState.nd
index a07dfda..3dd98ab 100644
Binary files a/apidoc_config/Data/PreviousMenuState.nd and b/apidoc_config/Data/PreviousMenuState.nd differ
diff --git a/apidoc_config/Data/PreviousSettings.nd b/apidoc_config/Data/PreviousSettings.nd
index d4dc298..549189f 100644
Binary files a/apidoc_config/Data/PreviousSettings.nd and b/apidoc_config/Data/PreviousSettings.nd differ
diff --git a/apidoc_config/Data/SymbolTable.nd b/apidoc_config/Data/SymbolTable.nd
index 8a0028b..0deef8c 100644
Binary files a/apidoc_config/Data/SymbolTable.nd and b/apidoc_config/Data/SymbolTable.nd differ
diff --git a/apidoc_config/Languages.txt b/apidoc_config/Languages.txt
index 42b197c..85d5fde 100644
--- a/apidoc_config/Languages.txt
+++ b/apidoc_config/Languages.txt
@@ -1,4 +1,4 @@
-Format: 1.52
+Format: 1.51
 
 # This is the Natural Docs languages file for this project.  If you change
 # anything here, it will apply to THIS PROJECT ONLY.  If you'd like to change
diff --git a/apidoc_config/Menu.txt b/apidoc_config/Menu.txt
index 0b07276..4e27104 100644
--- a/apidoc_config/Menu.txt
+++ b/apidoc_config/Menu.txt
@@ -1,4 +1,4 @@
-Format: 1.52
+Format: 1.51
 
 
 Title: OpenLayers
@@ -135,15 +135,6 @@ Group: OpenLayers  {
    Group: Format  {
 
       File: Format  (no auto-title, OpenLayers/Format.js)
-      File: ArcXML  (no auto-title, OpenLayers/Format/ArcXML.js)
-      File: ArcXML.Features  (no auto-title, OpenLayers/Format/ArcXML/Features.js)
-      File: Atom  (no auto-title, OpenLayers/Format/Atom.js)
-      File: Context  (no auto-title, OpenLayers/Format/Context.js)
-      File: CQL  (no auto-title, OpenLayers/Format/CQL.js)
-      File: CSWGetDomain  (no auto-title, OpenLayers/Format/CSWGetDomain.js)
-      File: CSWGetDomain.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetDomain/v2_0_2.js)
-      File: CSWGetRecords  (no auto-title, OpenLayers/Format/CSWGetRecords.js)
-      File: CSWGetRecords.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetRecords/v2_0_2.js)
 
       Group: Filter  {
 
@@ -169,14 +160,6 @@ Group: OpenLayers  {
          File: v1_0_0  (no auto-title, OpenLayers/Format/SLD/v1_0_0.js)
          }  # Group: SLD
 
-      File: GeoJSON  (no auto-title, OpenLayers/Format/GeoJSON.js)
-      File: GeoRSS  (no auto-title, OpenLayers/Format/GeoRSS.js)
-      File: GPX  (no auto-title, OpenLayers/Format/GPX.js)
-      File: JSON  (no auto-title, OpenLayers/Format/JSON.js)
-      File: KML  (no auto-title, OpenLayers/Format/KML.js)
-      File: OGCExceptionReport  (no auto-title, OpenLayers/Format/OGCExceptionReport.js)
-      File: OSM  (no auto-title, OpenLayers/Format/OSM.js)
-
       Group: OWSCommon  {
 
          File: OWSCommon  (no auto-title, OpenLayers/Format/OWSCommon.js)
@@ -185,18 +168,6 @@ Group: OpenLayers  {
          File: v1_1_0  (no auto-title, OpenLayers/Format/OWSCommon/v1_1_0.js)
          }  # Group: OWSCommon
 
-      File: OWSContext  (no auto-title, OpenLayers/Format/OWSContext.js)
-      File: OWSContext.v0_3_1  (no auto-title, OpenLayers/Format/OWSContext/v0_3_1.js)
-      File: QueryStringFilter  (no auto-title, OpenLayers/Format/QueryStringFilter.js)
-      File: SOSCapabilities  (no auto-title, OpenLayers/Format/SOSCapabilities.js)
-      File: SOSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/SOSCapabilities/v1_0_0.js)
-      File: SOSGetFeatureOfInterest  (no auto-title, OpenLayers/Format/SOSGetFeatureOfInterest.js)
-      File: SOSGetObservation  (no auto-title, OpenLayers/Format/SOSGetObservation.js)
-      File: Text  (no auto-title, OpenLayers/Format/Text.js)
-      File: VersionedOGC  (OpenLayers/Format/XML/VersionedOGC.js)
-      File: WCSGetCoverage version 1.1.0  (no auto-title, OpenLayers/Format/WCSGetCoverage.js)
-      File: WFS  (no auto-title, OpenLayers/Format/WFS.js)
-
       Group: WFSCapabilities  {
 
          File: WFSCapabilities  (no auto-title, OpenLayers/Format/WFSCapabilities.js)
@@ -239,19 +210,60 @@ Group: OpenLayers  {
          File: v1_1  (no auto-title, OpenLayers/Format/WMSDescribeLayer/v1_1.js)
          }  # Group: WMSDescribeLayer
 
-      File: WFSDescribeFeatureType  (no auto-title, OpenLayers/Format/WFSDescribeFeatureType.js)
-      File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
-      File: WMSGetFeatureInfo  (no auto-title, OpenLayers/Format/WMSGetFeatureInfo.js)
-      File: WMTSCapabilities  (no auto-title, OpenLayers/Format/WMTSCapabilities.js)
-      File: WMTSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WMTSCapabilities/v1_0_0.js)
-      File: WPSCapabilities  (no auto-title, OpenLayers/Format/WPSCapabilities.js)
-      File: WPSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WPSCapabilities/v1_0_0.js)
-      File: WPSDescribeProcess  (no auto-title, OpenLayers/Format/WPSDescribeProcess.js)
-      File: WPSExecute version 1.0.0  (no auto-title, OpenLayers/Format/WPSExecute.js)
-      File: XLS  (no auto-title, OpenLayers/Format/XLS.js)
-      File: XLS.v1  (no auto-title, OpenLayers/Format/XLS/v1.js)
-      File: XLS.v1_1_0  (no auto-title, OpenLayers/Format/XLS/v1_1_0.js)
-      File: XML  (no auto-title, OpenLayers/Format/XML.js)
+      Group: Format  {
+
+         File: ArcXML  (no auto-title, OpenLayers/Format/ArcXML.js)
+         File: ArcXML.Features  (no auto-title, OpenLayers/Format/ArcXML/Features.js)
+         File: Atom  (no auto-title, OpenLayers/Format/Atom.js)
+         File: Context  (no auto-title, OpenLayers/Format/Context.js)
+         File: CQL  (no auto-title, OpenLayers/Format/CQL.js)
+         File: CSWGetDomain  (no auto-title, OpenLayers/Format/CSWGetDomain.js)
+         File: CSWGetDomain.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetDomain/v2_0_2.js)
+         File: CSWGetRecords  (no auto-title, OpenLayers/Format/CSWGetRecords.js)
+         File: CSWGetRecords.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetRecords/v2_0_2.js)
+         File: EncodedPolyline  (OpenLayers/Format/EncodedPolyline.js)
+         File: GeoJSON  (no auto-title, OpenLayers/Format/GeoJSON.js)
+         File: GeoRSS  (no auto-title, OpenLayers/Format/GeoRSS.js)
+         File: GPX  (no auto-title, OpenLayers/Format/GPX.js)
+         File: JSON  (no auto-title, OpenLayers/Format/JSON.js)
+         File: KML  (no auto-title, OpenLayers/Format/KML.js)
+         File: OGCExceptionReport  (no auto-title, OpenLayers/Format/OGCExceptionReport.js)
+         File: OSM  (no auto-title, OpenLayers/Format/OSM.js)
+         File: OWSContext  (no auto-title, OpenLayers/Format/OWSContext.js)
+         File: OWSContext.v0_3_1  (no auto-title, OpenLayers/Format/OWSContext/v0_3_1.js)
+         File: QueryStringFilter  (no auto-title, OpenLayers/Format/QueryStringFilter.js)
+         File: SOSCapabilities  (no auto-title, OpenLayers/Format/SOSCapabilities.js)
+         File: SOSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/SOSCapabilities/v1_0_0.js)
+         File: SOSGetFeatureOfInterest  (no auto-title, OpenLayers/Format/SOSGetFeatureOfInterest.js)
+         File: SOSGetObservation  (no auto-title, OpenLayers/Format/SOSGetObservation.js)
+         File: Text  (no auto-title, OpenLayers/Format/Text.js)
+         File: WCSCapabilities  (OpenLayers/Format/WCSCapabilities.js)
+
+         Group: WCSCapabilities  {
+
+            File: WCSCapabilities.v1  (OpenLayers/Format/WCSCapabilities/v1.js)
+            File: WCSCapabilities/v1_0_0  (OpenLayers/Format/WCSCapabilities/v1_0_0.js)
+            File: WCSCapabilities/v1_1_0  (OpenLayers/Format/WCSCapabilities/v1_1_0.js)
+            }  # Group: WCSCapabilities
+
+         File: WCSGetCoverage version 1.1.0  (no auto-title, OpenLayers/Format/WCSGetCoverage.js)
+         File: WFS  (no auto-title, OpenLayers/Format/WFS.js)
+         File: WFSDescribeFeatureType  (no auto-title, OpenLayers/Format/WFSDescribeFeatureType.js)
+         File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
+         File: WMSGetFeatureInfo  (no auto-title, OpenLayers/Format/WMSGetFeatureInfo.js)
+         File: WMTSCapabilities  (no auto-title, OpenLayers/Format/WMTSCapabilities.js)
+         File: WMTSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WMTSCapabilities/v1_0_0.js)
+         File: WPSCapabilities  (no auto-title, OpenLayers/Format/WPSCapabilities.js)
+         File: WPSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WPSCapabilities/v1_0_0.js)
+         File: WPSDescribeProcess  (no auto-title, OpenLayers/Format/WPSDescribeProcess.js)
+         File: WPSExecute version 1.0.0  (no auto-title, OpenLayers/Format/WPSExecute.js)
+         File: XLS  (no auto-title, OpenLayers/Format/XLS.js)
+         File: XLS.v1  (no auto-title, OpenLayers/Format/XLS/v1.js)
+         File: XLS.v1_1_0  (no auto-title, OpenLayers/Format/XLS/v1_1_0.js)
+         File: XML  (no auto-title, OpenLayers/Format/XML.js)
+         File: XML.VersionedOGC  (OpenLayers/Format/XML/VersionedOGC.js)
+         }  # Group: Format
+
       }  # Group: Format
 
    Group: Geometry  {
@@ -288,50 +300,56 @@ Group: OpenLayers  {
    Group: Lang  {
 
       File: Lang  (no auto-title, OpenLayers/Lang.js)
-      File: ar  (no auto-title, OpenLayers/Lang/ar.js)
-      File: be-tarask  (no auto-title, OpenLayers/Lang/be-tarask.js)
-      File: bg  (no auto-title, OpenLayers/Lang/bg.js)
-      File: br  (no auto-title, OpenLayers/Lang/br.js)
-      File: ca  (no auto-title, OpenLayers/Lang/ca.js)
-      File: cs-CZ  (no auto-title, OpenLayers/Lang/cs-CZ.js)
-      File: da-DK  (no auto-title, OpenLayers/Lang/da-DK.js)
-      File: de  (no auto-title, OpenLayers/Lang/de.js)
-      File: en  (no auto-title, OpenLayers/Lang/en.js)
-      File: en-CA  (no auto-title, OpenLayers/Lang/en-CA.js)
-      File: es  (no auto-title, OpenLayers/Lang/es.js)
-      File: el  (no auto-title, OpenLayers/Lang/el.js)
-      File: fi  (no auto-title, OpenLayers/Lang/fi.js)
-      File: fr  (no auto-title, OpenLayers/Lang/fr.js)
-      File: fur  (no auto-title, OpenLayers/Lang/fur.js)
-      File: gl  (no auto-title, OpenLayers/Lang/gl.js)
-      File: gsw  (no auto-title, OpenLayers/Lang/gsw.js)
-      File: hr  (no auto-title, OpenLayers/Lang/hr.js)
-      File: hsb  (no auto-title, OpenLayers/Lang/hsb.js)
-      File: hu  (no auto-title, OpenLayers/Lang/hu.js)
-      File: ia  (no auto-title, OpenLayers/Lang/ia.js)
-      File: id  (no auto-title, OpenLayers/Lang/id.js)
-      File: io  (no auto-title, OpenLayers/Lang/io.js)
-      File: is  (no auto-title, OpenLayers/Lang/is.js)
-      File: it  (no auto-title, OpenLayers/Lang/it.js)
-      File: ja  (no auto-title, OpenLayers/Lang/ja.js)
-      File: km  (no auto-title, OpenLayers/Lang/km.js)
-      File: ksh  (no auto-title, OpenLayers/Lang/ksh.js)
-      File: lt  (no auto-title, OpenLayers/Lang/lt.js)
-      File: nds  (no auto-title, OpenLayers/Lang/nds.js)
-      File: nb  (no auto-title, OpenLayers/Lang/nb.js)
-      File: nl  (no auto-title, OpenLayers/Lang/nl.js)
-      File: nn  (no auto-title, OpenLayers/Lang/nn.js)
-      File: oc  (no auto-title, OpenLayers/Lang/oc.js)
-      File: pt  (no auto-title, OpenLayers/Lang/pt.js)
-      File: pl  (no auto-title, OpenLayers/Lang/pl.js)
-      File: pt-BR  (no auto-title, OpenLayers/Lang/pt-BR.js)
-      File: ru  (no auto-title, OpenLayers/Lang/ru.js)
-      File: sk  (no auto-title, OpenLayers/Lang/sk.js)
-      File: sv-SE  (no auto-title, OpenLayers/Lang/sv-SE.js)
-      File: te  (no auto-title, OpenLayers/Lang/te.js)
-      File: vi  (no auto-title, OpenLayers/Lang/vi.js)
-      File: zh-CN  (no auto-title, OpenLayers/Lang/zh-CN.js)
-      File: zh-TW  (no auto-title, OpenLayers/Lang/zh-TW.js)
+
+      Group: Lang  {
+
+         File: ar  (no auto-title, OpenLayers/Lang/ar.js)
+         File: be-tarask  (no auto-title, OpenLayers/Lang/be-tarask.js)
+         File: bg  (no auto-title, OpenLayers/Lang/bg.js)
+         File: br  (no auto-title, OpenLayers/Lang/br.js)
+         File: ca  (no auto-title, OpenLayers/Lang/ca.js)
+         File: cs-CZ  (no auto-title, OpenLayers/Lang/cs-CZ.js)
+         File: da-DK  (no auto-title, OpenLayers/Lang/da-DK.js)
+         File: de  (no auto-title, OpenLayers/Lang/de.js)
+         File: en  (no auto-title, OpenLayers/Lang/en.js)
+         File: en-CA  (no auto-title, OpenLayers/Lang/en-CA.js)
+         File: es  (no auto-title, OpenLayers/Lang/es.js)
+         File: el  (no auto-title, OpenLayers/Lang/el.js)
+         File: fi  (no auto-title, OpenLayers/Lang/fi.js)
+         File: fr  (no auto-title, OpenLayers/Lang/fr.js)
+         File: fur  (no auto-title, OpenLayers/Lang/fur.js)
+         File: gl  (no auto-title, OpenLayers/Lang/gl.js)
+         File: gsw  (no auto-title, OpenLayers/Lang/gsw.js)
+         File: hr  (no auto-title, OpenLayers/Lang/hr.js)
+         File: hsb  (no auto-title, OpenLayers/Lang/hsb.js)
+         File: hu  (no auto-title, OpenLayers/Lang/hu.js)
+         File: ia  (no auto-title, OpenLayers/Lang/ia.js)
+         File: id  (no auto-title, OpenLayers/Lang/id.js)
+         File: io  (no auto-title, OpenLayers/Lang/io.js)
+         File: is  (no auto-title, OpenLayers/Lang/is.js)
+         File: it  (no auto-title, OpenLayers/Lang/it.js)
+         File: ja  (no auto-title, OpenLayers/Lang/ja.js)
+         File: km  (no auto-title, OpenLayers/Lang/km.js)
+         File: ksh  (no auto-title, OpenLayers/Lang/ksh.js)
+         File: lt  (no auto-title, OpenLayers/Lang/lt.js)
+         File: nds  (no auto-title, OpenLayers/Lang/nds.js)
+         File: nb  (no auto-title, OpenLayers/Lang/nb.js)
+         File: nl  (no auto-title, OpenLayers/Lang/nl.js)
+         File: nn  (no auto-title, OpenLayers/Lang/nn.js)
+         File: oc  (no auto-title, OpenLayers/Lang/oc.js)
+         File: pt  (no auto-title, OpenLayers/Lang/pt.js)
+         File: pl  (no auto-title, OpenLayers/Lang/pl.js)
+         File: pt-BR  (no auto-title, OpenLayers/Lang/pt-BR.js)
+         File: ru  (no auto-title, OpenLayers/Lang/ru.js)
+         File: sk  (no auto-title, OpenLayers/Lang/sk.js)
+         File: sv-SE  (no auto-title, OpenLayers/Lang/sv-SE.js)
+         File: te  (no auto-title, OpenLayers/Lang/te.js)
+         File: vi  (no auto-title, OpenLayers/Lang/vi.js)
+         File: zh-CN  (no auto-title, OpenLayers/Lang/zh-CN.js)
+         File: zh-TW  (no auto-title, OpenLayers/Lang/zh-TW.js)
+         File: Lang["ro"]  (OpenLayers/Lang/ro.js)
+         }  # Group: Lang
+
       }  # Group: Lang
 
    Group: Layer  {
@@ -387,7 +405,6 @@ Group: OpenLayers  {
 
       File: Popup  (no auto-title, OpenLayers/Popup.js)
       File: Anchored  (no auto-title, OpenLayers/Popup/Anchored.js)
-      File: AnchoredBubble  (no auto-title, OpenLayers/Popup/AnchoredBubble.js)
       File: Framed  (no auto-title, OpenLayers/Popup/Framed.js)
       File: FramedCloud  (no auto-title, OpenLayers/Popup/FramedCloud.js)
       }  # Group: Popup
@@ -471,7 +488,12 @@ Group: OpenLayers  {
       File: Map  (no auto-title, OpenLayers/Map.js)
       File: OpenLayers.Animation  (OpenLayers/Animation.js)
       File: OpenLayers.Events.buttonclick  (OpenLayers/Events/buttonclick.js)
+      File: OpenLayers.Events.featureclick  (OpenLayers/Events/featureclick.js)
       File: OpenLayers.Kinetic  (OpenLayers/Kinetic.js)
+      File: OpenLayers.TileManager  (OpenLayers/TileManager.js)
+      File: OpenLayers.Util.vendorPrefix  (OpenLayers/Util/vendorPrefix.js)
+      File: OpenLayers.WPSClient  (OpenLayers/WPSClient.js)
+      File: OpenLayers.WPSProcess  (OpenLayers/WPSProcess.js)
       File: Projection  (no auto-title, OpenLayers/Projection.js)
       File: Rule  (no auto-title, OpenLayers/Rule.js)
       File: SingleFile.js  (no auto-title, OpenLayers/SingleFile.js)
diff --git a/apidoc_config/Topics.txt b/apidoc_config/Topics.txt
index 125abab..6951a51 100644
--- a/apidoc_config/Topics.txt
+++ b/apidoc_config/Topics.txt
@@ -1,4 +1,4 @@
-Format: 1.52
+Format: 1.51
 
 # This is the Natural Docs topics file for this project.  If you change anything
 # here, it will apply to THIS PROJECT ONLY.  If you'd like to change something
diff --git a/build/build.py b/build/build.py
index 0ca2a74..fd0f6e9 100755
--- a/build/build.py
+++ b/build/build.py
@@ -32,6 +32,13 @@ def build(config_file = None, output_file = None, options = None):
     except ImportError:
         print "No minimize"
 
+    try:
+        import uglify_js
+        uglify_js.check_available()
+        have_compressor.append("uglify-js")
+    except Exception, E:
+        print "No uglify-js (%s)" % E
+
     use_compressor = None
     if options.compressor and options.compressor in have_compressor:
         use_compressor = options.compressor
@@ -52,7 +59,7 @@ def build(config_file = None, output_file = None, options = None):
 
     print "Merging libraries."
     try:
-        if use_compressor == "closure":
+        if use_compressor == "closure" or use_compressor == 'uglify-js':
             sourceFiles = mergejs.getNames(sourceDirectory, configFilename)
         else:
             merged = mergejs.run(sourceDirectory, None, configFilename)
@@ -60,6 +67,15 @@ def build(config_file = None, output_file = None, options = None):
         print "\nAbnormal termination."
         sys.exit("ERROR: %s" % E)
 
+    if options.amdname:
+        options.amdname = "'" + options.amdname + "',"
+    else:
+        options.amdname = ""
+        
+    if options.amd == 'pre':
+        print "\nAdding AMD function."
+        merged = "define(%sfunction(){%sreturn OpenLayers;});" % (options.amdname, merged)
+    
     print "Compressing using %s" % use_compressor
     if use_compressor == "jsmin":
         minimized = jsmin.jsmin(merged)
@@ -98,9 +114,25 @@ def build(config_file = None, output_file = None, options = None):
             print "\nAbnormal termination due to compilation errors." 
             sys.exit("ERROR: Closure Compilation failed! See compilation errors.") 
         print "Closure Compilation has completed successfully."
+    elif use_compressor == "uglify-js":
+        minimized = uglify_js.compile(sourceFiles)
+        if minimized is None:
+            print "\nAbnormal termination due to compilation errors."
+            sys.exit("ERROR: Uglify JS compilation failed! See compilation errors.")
+
+        print "Uglify JS compilation has completed successfully."
+
     else: # fallback
         minimized = merged 
 
+    if options.amd == 'post':
+        print "\nAdding AMD function."
+        minimized = "define(%sfunction(){%sreturn OpenLayers;});" % (options.amdname, minimized)
+    
+    if options.status:
+        print "\nAdding status file."
+        minimized = "// status: " + file(options.status).read() + minimized
+    
     print "\nAdding license file."
     minimized = file("license.txt").read() + minimized
 
@@ -111,7 +143,10 @@ def build(config_file = None, output_file = None, options = None):
 
 if __name__ == '__main__':
   opt = optparse.OptionParser(usage="%s [options] [config_file] [output_file]\n  Default config_file is 'full.cfg', Default output_file is 'OpenLayers.js'")
-  opt.add_option("-c", "--compressor", dest="compressor", help="compression method: one of 'jsmin', 'minimize', 'closure_ws', 'closure', or 'none'", default="jsmin")
+  opt.add_option("-c", "--compressor", dest="compressor", help="compression method: one of 'jsmin' (default), 'minimize', 'closure_ws', 'closure', or 'none'", default="jsmin")
+  opt.add_option("-s", "--status", dest="status", help="name of a file whose contents will be added as a comment at the front of the output file. For example, when building from a git repo, you can save the output of 'git describe --tags' in this file. Default is no file.", default=False)
+  opt.add_option("--amd", dest="amd", help="output should be AMD module; wrap merged files in define function; can be either 'pre' (before compilation) or 'post' (after compilation). Wrapping the OpenLayers var in a function means the filesize can be reduced by the closure compiler using 'pre', but be aware that a few functions depend on the OpenLayers variable being present. Either option can be used with jsmin or minimize compression. Default false, not AMD.", default=False)
+  opt.add_option("--amdname", dest="amdname", help="only useful with amd option. Name of AMD module. Default no name, anonymous module.", default=False)
   (options, args) = opt.parse_args()
   if not len(args):
     build(options=options)
diff --git a/build/license.txt b/build/license.txt
index 9c7635d..7ea36ac 100644
--- a/build/license.txt
+++ b/build/license.txt
@@ -2,7 +2,7 @@
 
   OpenLayers.js -- OpenLayers Map Viewer Library
 
-  Copyright (c) 2006-2012 by OpenLayers Contributors
+  Copyright (c) 2006-2013 by OpenLayers Contributors
   Published under the 2-clause BSD license.
   See http://openlayers.org/dev/license.txt for the full text of the license, and http://openlayers.org/dev/authors.txt for full list of contributors.
 
diff --git a/build/mobile.cfg b/build/mobile.cfg
index bfe4543..b41f0bd 100644
--- a/build/mobile.cfg
+++ b/build/mobile.cfg
@@ -29,6 +29,7 @@ OpenLayers/Protocol/HTTP.js
 OpenLayers/Protocol/WFS.js
 OpenLayers/Protocol/WFS/v1_0_0.js
 OpenLayers/Strategy/Fixed.js
+OpenLayers/TileManager.js
 
 [exclude]
 
diff --git a/build/tests.cfg b/build/tests.cfg
index 9e2237f..557b16b 100644
--- a/build/tests.cfg
+++ b/build/tests.cfg
@@ -7,4 +7,5 @@
 [include]
 
 [exclude]
+Firebug
 OpenLayers.js
diff --git a/doc/apidocs/files/OpenLayers-js.html b/doc/apidocs/files/OpenLayers-js.html
index 25193b5..ad8e7ef 100644
--- a/doc/apidocs/files/OpenLayers-js.html
+++ b/doc/apidocs/files/OpenLayers-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers"></a>OpenLayers</h1><div class=CBody><p>The OpenLayers object provides a namespace for all things OpenLayers</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers" >OpenLayers</a></td><td class=SDescription>The OpenLayers object provi [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers"></a>OpenLayers</h1><div class=CBody><p>The OpenLayers object provides a namespace for all things OpenLayers</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers" >OpenLayers</a></td><td class=SDescription>The OpenLayers object provi [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Properties"></a>Properties</h3></div></div>
 
@@ -24,7 +24,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.VERSION_NUMBER"></a>VERSION_NUMBER</h3></div></div>
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.VERSION_NUMBER"></a>VERSION_NUMBER</h3><div class=CBody><p>This constant identifies the version of OpenLayers.</p><p>When asking questions or reporting issues, make sure to include the output of OpenLayers.VERSION_NUMBER in the question or issue-description.</p></div></div></div>
 
 </div><!--Content-->
 
@@ -32,10 +32,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile id=MSelected>OpenLayers</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile> [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile id=MSelected>OpenLayers</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile> [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([32], 34);// --></script></div><!--Menu-->
+HideAllBut([35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Animation-js.html b/doc/apidocs/files/OpenLayers/Animation-js.html
index f0ed3ad..c1e3663 100644
--- a/doc/apidocs/files/OpenLayers/Animation-js.html
+++ b/doc/apidocs/files/OpenLayers/Animation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Animation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script languag [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes-js.html b/doc/apidocs/files/OpenLayers/BaseTypes-js.html
index 5d8ef42..0edbc18 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers Base Types - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -32,7 +32,7 @@ OpenLayers.String.isNumeric("12 dozen") // false
 OpenLayers.String.isNumeric("4") // true
 OpenLayers.String.isNumeric(" 4 ") // false</pre></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean} String contains only a number.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.String.numericIf"></a>numericIf</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>numericIf: function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.String.numericIf"></a>numericIf</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>numericIf: function(</td><td class="PParameter  prettyprint " nowrap>value,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>trimWhitespace</td><td class="PAfterPar [...]
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Number"></a>OpenLayers.<wbr>Number</h2><div class=CBody><p>Contains convenience functions for manipulating numbers.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Number.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction S [...]
 
@@ -68,15 +68,15 @@ OpenLayers.String.isNumeric(" 4 ") // false</pre></blockquote><h4 clas
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>startsWith: function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sub</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Test whether a [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>startsWith: function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sub</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Test whether a [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/Bounds-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/Bounds-js.html
index 33f5ac9..0c76550 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/Bounds-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/Bounds-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Bounds - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><scrip [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -14,57 +14,70 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Bounds"></a>OpenLayers.<wbr>Bounds</h1><div class=CBody><p>Instances of this class represent bounding boxes.   Data stored as left, bottom, right, top floats.  All values are initialized to null, however, you should make sure you set them before using the bounds for anything.</p><h4 class=CHeading>Possible use case</h4><blockquote><pre class="prettyprint">bounds = new OpenLay [...]
 bounds.extend(new OpenLayers.LonLat(4,5));
 bounds.extend(new OpenLayers.LonLat(5,6));
-bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Bounds" >OpenLayers.<wbr>Bounds</a></td><td class=SDescription>Instances of this class represent bounding boxes. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#OpenLayers.Bounds.Constructor" >Constructor</a></td><td [...]
+bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Bounds" >OpenLayers.<wbr>Bounds</a></td><td class=SDescription>Instances of this class represent bounding boxes. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#OpenLayers.Bounds.Constructor" >Constructor</a></td><td [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.OpenLayers.Bounds"></a>OpenLayers.<wbr>Bounds</h3><div class=CBody><p>Construct a new bounds object.  Coordinates can either be passed as four arguments, or as a single argument.</p><h4 class=CHeading>Parameters (four arguments)</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>left</td><td class=CDLDescription>{Number} The left bounds of the box.  [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.OpenLayers.Bounds"></a>OpenLayers.<wbr>Bounds</h3><div class=CBody><p>Construct a new bounds object.  Coordinates can either be passed as four arguments, or as a single argument.</p><h4 class=CHeading>Parameters (four arguments)</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>left</td><td class=CDLDescription>{Number} The left bounds of the box.  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toString"></a>toString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} String representation of bounds object.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toString"></a>toString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString:function()</td></tr></table></blockquote><p>Returns a string representation of the bounds object.</p><h4 class=CHeading>Returns</h4><p>{String} String representation of bounds object.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toArray"></a>toArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toArray: function(</td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toArray"></a>toArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toArray: function(</td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toBBOX"></a>toBBOX</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toBBOX:function(</td><td class="PParameter  prettyprint " nowrap>decimal,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toBBOX"></a>toBBOX</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toBBOX:function(</td><td class="PParameter  prettyprint " nowrap>decimal,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toGeometry"></a>toGeometry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toGeometry: function()</td></tr></table></blockquote><p>Create a new polygon geometry based on this bounds.</p><h4 class=CHeading>Returns</h4><p>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link26 onMouseOver="ShowTip(e [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toGeometry"></a>toGeometry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toGeometry: function()</td></tr></table></blockquote><p>Create a new polygon geometry based on this bounds.</p><h4 class=CHeading>Returns</h4><p>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link34 onMouseOver="ShowTip(e [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getWidth"></a>getWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getWidth:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The width of the bounds</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getWidth"></a>getWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getWidth:function()</td></tr></table></blockquote><p>Returns the width of the bounds.</p><h4 class=CHeading>Returns</h4><p>{Float} The width of the bounds (right minus left).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getHeight"></a>getHeight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getHeight:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The height of the bounds (top minus bottom).</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getHeight"></a>getHeight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getHeight:function()</td></tr></table></blockquote><p>Returns the height of the bounds.</p><h4 class=CHeading>Returns</h4><p>{Float} The height of the bounds (top minus bottom).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="Size-js.html#OpenLayers.Size" class=LClass id=link27 onMouseOver="ShowTip(event, 'tt8', 'link27')" onMouseOut="HideTip('tt8')">OpenLayers.Size</a>} The size of the box.</ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize:function()</td></tr></table></blockquote><p>Returns an <a href="Size-js.html#OpenLayers.Size" class=LClass id=link35 onMouseOver="ShowTip(event, 'tt8', 'link35')" onMouseOut="HideTip('tt8')">OpenLayers.Size</a> object of the bounds.</p><h4 class=CHeading> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterPixel"></a>getCenterPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterPixel:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="Pixel-js.html#OpenLayers.Pixel" class=LClass id=link28 onMouseOver="ShowTip(event, 'tt10', 'link28')" onMouseOut="HideTip('tt10')">OpenLayers.Pixel</ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterPixel"></a>getCenterPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterPixel:function()</td></tr></table></blockquote><p>Returns the <a href="Pixel-js.html#OpenLayers.Pixel" class=LClass id=link37 onMouseOver="ShowTip(event, 'tt10', 'link37')" onMouseOut="HideTip('tt10')">OpenLayers.Pixel</a> object which repr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterLonLat"></a>getCenterLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterLonLat:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="LonLat-js.html#OpenLayers.LonLat" class=LClass id=link29 onMouseOver="ShowTip(event, 'tt12', 'link29')" onMouseOut="HideTip('tt12')">OpenLayers.Lo [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterLonLat"></a>getCenterLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterLonLat:function()</td></tr></table></blockquote><p>Returns the <a href="LonLat-js.html#OpenLayers.LonLat" class=LClass id=link39 onMouseOver="ShowTip(event, 'tt12', 'link39')" onMouseOut="HideTip('tt12')">OpenLayers.LonLat</a> object whic [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.scale"></a>scale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>scale: function(</td><td class="PParameter  prettyprint " nowrap>ratio,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>origin</td><td class="PAfterParameters  prettyprint [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.scale"></a>scale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>scale: function(</td><td class="PParameter  prettyprint " nowrap>ratio,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>origin</td><td class="PAfterParameters  prettyprint [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.add"></a>add</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>add:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.add"></a>add</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>add:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+bounds.toString();
+// => "0,0,10,10"
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.extend"></a>extend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extend:function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Extend th [...]
+bounds.add(-1.5, 4).toString();
+// => "-1.5,4,8.5,14"</pre></blockquote><p>This method will throw a TypeError if it is passed null as an argument.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>{Float} horizontal delta</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>{Float} vertical delta</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Bounds.OpenLayers.Boun [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsLonLat"></a>containsLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsLonLat: function(</td><td class="PParameter  prettyprint " nowrap>ll,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAft [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.extend"></a>extend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extend:function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Extend th [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsPixel"></a>containsPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsPixel:function(</td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>inclusive</td><td class="PAfter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.extendXY"></a>extendXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extendXY:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PAfterParameters  prettyprint  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.contains"></a>contains</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>contains:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y,</td></tr><tr><td></td><td class="PParameter  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsLonLat"></a>containsLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsLonLat: function(</td><td class="PParameter  prettyprint " nowrap>ll,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAft [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.intersectsBounds"></a>intersectsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>intersectsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td cl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsPixel"></a>containsPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsPixel:function(</td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>inclusive</td><td class="PAfter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsBounds"></a>containsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>partial,</td></tr><tr><t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.contains"></a>contains</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>contains:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y,</td></tr><tr><td></td><td class="PParameter  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.determineQuadrant"></a>determineQuadrant</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>determineQuadrant: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.intersectsBounds"></a>intersectsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>intersectsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.transform"></a>transform</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>transform: function(</td><td class="PParameter  prettyprint " nowrap>source,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dest</td><td class="PAfterParameters   [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsBounds"></a>containsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>partial,</td></tr><tr><t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromString"></a>fromString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromString = function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.determineQuadrant"></a>determineQuadrant</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>determineQuadrant: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromArray"></a>fromArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromArray = function(</td><td class="PParameter  prettyprint " nowrap>bbox,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.transform"></a>transform</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>transform: function(</td><td class="PParameter  prettyprint " nowrap>source,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dest</td><td class="PAfterParameters   [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromSize"></a>fromSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromSize = function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromString"></a>fromString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromString = function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</t [...]
+// => equivalent to ...
+new OpenLayers.Bounds(5, 42, 10, 45);</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>str</td><td class=CDLDescription>{String} Comma-separated bounds string.  (e.g.  “5,42,10,45”)</td></tr><tr><td class=CDLEntry>reverseAxisOrder</td><td class=CDLDescription>{Boolean} Does the string use reverse axis order?</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="#OpenL [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromArray"></a>fromArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromArray = function(</td><td class="PParameter  prettyprint " nowrap>bbox,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td> [...]
+// => equivalent to ...
+new OpenLayers.Bounds(5, 42, 10, 45);</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>bbox</td><td class=CDLDescription>{Array(Float)} Array of bounds values (e.g.  [5,42,10,45])</td></tr><tr><td class=CDLEntry>reverseAxisOrder</td><td class=CDLDescription>{Boolean} Does the array use reverse axis order?</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Bounds.OpenLay [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromSize"></a>fromSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromSize = function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+// => equivalent to ...
+new OpenLayers.Bounds(0, 20, 10, 0);</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>size</td><td class=CDLDescription>{<a href="Size-js.html#OpenLayers.Size" class=LClass id=link66 onMouseOver="ShowTip(event, 'tt8', 'link66')" onMouseOut="HideTip('tt8')">OpenLayers.Size</a> or Object} <a href="Size-js.html#OpenLayers.Size" class=LClass id=link67 onMouseOver="ShowTip(event, 'tt8', 'link67')" onM [...]
 
 </div><!--Content-->
 
@@ -72,15 +85,15 @@ bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><di
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString:function()</td></tr></table></blockquote>{String} String representation of bounds object.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap> [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString:function()</td></tr></table></blockquote>Returns a string representation of the bounds object.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "no [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/Class-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/Class-js.html
index 9b598ac..c3dde3f 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/Class-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/Class-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Class.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class=" [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Class.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/Date-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/Date-js.html
index 6b1b0f1..16c19f8 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/Date-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/Date-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Date - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script  [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Date"></a>OpenLayers.Date</h1><div class=CBody><p>Contains implementations of Date.parse and date.toISOString that match the ECMAScript 5 specification for parsing RFC 3339 dates.  <a href="http://tools.ietf.org/html/rfc3339" class=LURL target=_top>http://tools.ietf.org/html/rfc3339</a></p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder> [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Date"></a>OpenLayers.Date</h1><div class=CBody><p>Contains implementations of Date.parse and date.toISOString that match the ECMAScript 5 specification for parsing RFC 3339 dates.  <a href="http://tools.ietf.org/html/rfc3339" class=LURL target=_top>http://tools.ietf.org/html/rfc3339</a></p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder> [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Date.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Date.dateRegEx"></a>dateRegEx</h3><div class=CBody><p>The regex to be used for validating dates.  You can provide your own regex for instance for adding support for years before BC.  Default value is: /^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))|Z)?$/</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Date.Functions"></a>Functions</h3></div></div>
 
@@ -25,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/Element-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/Element-js.html
index a39749a..72fceab 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/Element-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/Element-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Element - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><scri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/LonLat-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/LonLat-js.html
index 091b490..c1807a2 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/LonLat-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/LonLat-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.LonLat - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><scrip [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/Pixel-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/Pixel-js.html
index 6f1f8ae..67dbd0a 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/Pixel-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/Pixel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Pixel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/BaseTypes/Size-js.html b/doc/apidocs/files/OpenLayers/BaseTypes/Size-js.html
index ca792b4..2ebca19 100644
--- a/doc/apidocs/files/OpenLayers/BaseTypes/Size-js.html
+++ b/doc/apidocs/files/OpenLayers/BaseTypes/Size-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Size - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script  [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Console-js.html b/doc/apidocs/files/OpenLayers/Console-js.html
index e751c1f..25419d6 100644
--- a/doc/apidocs/files/OpenLayers/Console-js.html
+++ b/doc/apidocs/files/OpenLayers/Console-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Console - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control-js.html b/doc/apidocs/files/OpenLayers/Control-js.html
index 7a7ddda..221c7d2 100644
--- a/doc/apidocs/files/OpenLayers/Control-js.html
+++ b/doc/apidocs/files/OpenLayers/Control-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -76,10 +76,10 @@ map.addControl(control);</pre></blockquote><!--START_ND_SUMMARY--><div class=Sum
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ArgParser-js.html b/doc/apidocs/files/OpenLayers/Control/ArgParser-js.html
index 5a435dd..ccf3040 100644
--- a/doc/apidocs/files/OpenLayers/Control/ArgParser-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ArgParser-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ArgParser - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Attribution-js.html b/doc/apidocs/files/OpenLayers/Control/Attribution-js.html
index eae94a1..0cad148 100644
--- a/doc/apidocs/files/OpenLayers/Control/Attribution-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Attribution-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Attribution - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Attribution"></a>OpenLayers.<wbr>Control.<wbr>Attribution</h1><div class=CBody><p>The attribution control adds attribution from layers to the map display.  It uses ‘attribution’ property of each layer.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1') [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Attribution"></a>OpenLayers.<wbr>Control.<wbr>Attribution</h1><div class=CBody><p>The attribution control adds attribution from layers to the map display.  It uses ‘attribution’ property of each layer.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1') [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.seperator"></a>seperator</h3><div class=CBody><p>{String} String used to seperate layers.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.separator"></a>separator</h3><div class=CBody><p>{String} String used to separate layers.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.template"></a>template</h3><div class=CBody><p>{String} Template for the attribution.  This has to include the substring “${layers}”, which will be replaced by the layer specific attributions, separated by <separator>.  The default is “${layers}”.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.template"></a>template</h3><div class=CBody><p>{String} Template for the attribution.  This has to include the substring “${layers}”, which will be replaced by the layer specific attributions, separated by <a href="#OpenLayers.Control.Attribution.separator" class=LProperty id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">separator</a>.   [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.Constructor"></a>Constructor</h3></div></div>
 
@@ -29,15 +29,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CProperty>{String} String used to separate layers.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Button-js.html b/doc/apidocs/files/OpenLayers/Control/Button-js.html
index c5f6275..5cc5ec0 100644
--- a/doc/apidocs/files/OpenLayers/Control/Button-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Button-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Button - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -22,10 +22,10 @@ panel.addControls([button]);</pre></blockquote><p>Will create a button with CSS
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/CacheRead-js.html b/doc/apidocs/files/OpenLayers/Control/CacheRead-js.html
index af60f7f..db0e280 100644
--- a/doc/apidocs/files/OpenLayers/Control/CacheRead-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/CacheRead-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.CacheRead - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/CacheWrite-js.html b/doc/apidocs/files/OpenLayers/Control/CacheWrite-js.html
index d6447da..713da91 100644
--- a/doc/apidocs/files/OpenLayers/Control/CacheWrite-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/CacheWrite-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.CacheWrite - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/DragFeature-js.html b/doc/apidocs/files/OpenLayers/Control/DragFeature-js.html
index b5402ad..e2fc825 100644
--- a/doc/apidocs/files/OpenLayers/Control/DragFeature-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/DragFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.DragFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/DragPan-js.html b/doc/apidocs/files/OpenLayers/Control/DragPan-js.html
index 291b016..2bf66a8 100644
--- a/doc/apidocs/files/OpenLayers/Control/DragPan-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/DragPan-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.DragPan - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -17,7 +17,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.documentDrag"></a>documentDrag</h3><div class=CBody><p>{Boolean} If set to true, mouse dragging will continue even if the mouse cursor leaves the map viewport.  Default is false.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.enableKinetic"></a>enableKinetic</h3><div class=CBody><p>{Boolean} Set this option to enable “kinetic dragging”.  Can be set to true or to an object.  If set to an object this object will be passed to the {<a href="../Kinetic-js.html#OpenLayers.Kinetic" class=LConstructor >OpenLayers.Kinetic</a>} constructor.  Defaults to false.  If you set this property, you shou [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.enableKinetic"></a>enableKinetic</h3><div class=CBody><p>{Boolean} Set this option to enable “kinetic dragging”.  Can be set to true or to an object.  If set to an object this object will be passed to the {<a href="../Kinetic-js.html#OpenLayers.Kinetic" class=LConstructor >OpenLayers.Kinetic</a>} constructor.  Defaults to true.  To get kinetic dragging, ensure tha [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.kineticInterval"></a>kineticInterval</h3><div class=CBody><p>{Integer} Interval in milliseconds between 2 steps in the “kinetic scrolling”.  Applies only if enableKinetic is set.  Defaults to 10 milliseconds.</p></div></div></div>
 
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/DrawFeature-js.html b/doc/apidocs/files/OpenLayers/Control/DrawFeature-js.html
index 2dccb26..f160dcd 100644
--- a/doc/apidocs/files/OpenLayers/Control/DrawFeature-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/DrawFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.DrawFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/EditingToolbar-js.html b/doc/apidocs/files/OpenLayers/Control/EditingToolbar-js.html
index e5f77f8..329cfab 100644
--- a/doc/apidocs/files/OpenLayers/Control/EditingToolbar-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/EditingToolbar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.EditingToolbar - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Geolocate-js.html b/doc/apidocs/files/OpenLayers/Control/Geolocate-js.html
index 4b96905..056486d 100644
--- a/doc/apidocs/files/OpenLayers/Control/Geolocate-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Geolocate-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Geolocate - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/GetFeature-js.html b/doc/apidocs/files/OpenLayers/Control/GetFeature-js.html
index 012bc14..c2a2e29 100644
--- a/doc/apidocs/files/OpenLayers/Control/GetFeature-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/GetFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.GetFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Graticule-js.html b/doc/apidocs/files/OpenLayers/Control/Graticule-js.html
index c3fdb75..e4508db 100644
--- a/doc/apidocs/files/OpenLayers/Control/Graticule-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Graticule-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Graticule - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/KeyboardDefaults-js.html b/doc/apidocs/files/OpenLayers/Control/KeyboardDefaults-js.html
index 6106228..d27b280 100644
--- a/doc/apidocs/files/OpenLayers/Control/KeyboardDefaults-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/KeyboardDefaults-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.KeyboardDefaults - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/LayerSwitcher-js.html b/doc/apidocs/files/OpenLayers/Control/LayerSwitcher-js.html
index e7b367d..6576f8a 100644
--- a/doc/apidocs/files/OpenLayers/Control/LayerSwitcher-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/LayerSwitcher-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.LayerSwitcher - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,14 +11,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.LayerSwitcher"></a>OpenLayers.<wbr>Control.<wbr>LayerSwitcher</h1><div class=CBody><p>The LayerSwitcher control displays a table of contents for the map.  This allows the user interface to switch between BaseLasyers and to show or hide Overlays.  By default the switcher is shown minimized on the right edge of the map, the user may expand it by clicking on the handle.< [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.LayerSwitcher"></a>OpenLayers.<wbr>Control.<wbr>LayerSwitcher</h1><div class=CBody><p>The LayerSwitcher control displays a table of contents for the map.  This allows the user interface to switch between BaseLasyers and to show or hide Overlays.  By default the switcher is shown minimized on the right edge of the map, the user may expand it by clicking on the handle.< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.roundedCorner"></a>roundedCorner</h3><div class=CBody><p>{Boolean} If true the Rico library is used for rounding the corners of the layer switcher div, defaults to false.  <b>Deprecated</b>.  Use CSS3’s border-radius instead.  If this option is set to true the Rico/Corner.js script must be loaded in the page, and therefore listed in the build profile.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.roundedCornerColor"></a>roundedCornerColor</h3><div class=CBody><p>{String} The color of the rounded corners, only applies if roundedCorner is true, defaults to “darkblue”.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.ascending"></a>ascending</h3><div class=CBody><p>{Boolean}</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.Constructor"></a>Constructor</h3></div></div>
@@ -35,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Measure-js.html b/doc/apidocs/files/OpenLayers/Control/Measure-js.html
index 9028fe1..5b0c6af 100644
--- a/doc/apidocs/files/OpenLayers/Control/Measure-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Measure-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Measure - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Measure"></a>OpenLayers.<wbr>Control.<wbr>Measure</h1><div class=CBody><p>Allows for drawing of features for measurements.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class= [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Measure"></a>OpenLayers.<wbr>Control.<wbr>Measure</h1><div class=CBody><p>Allows for drawing of features for measurements.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.Properties"></a>Properties</h3></div></div>
 
@@ -19,6 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.handlerOptions"></a>handlerOptions</h3><div class=CBody><p>{Object} Used to set non-default properties on the control’s handler</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.displaySystem"></a>displaySystem</h3><div class=CBody><p>{String} Display system for output measurements.   Supported values are ‘english’, ‘metric’, and ‘geographic’.   Default is ‘metric’.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.geodesic"></a>geodesic</h3><div class=CBody><p>{Boolean} Calculate geodesic metrics instead of planar metrics.   This requires that geometries can be transformed into Geographic/WGS84 (if that is not already the map projection).   Default is false.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.persist"></a>persist</h3><div class=CBody><p>{Boolean} Keep the temporary measurement sketch drawn after the measurement is complete.   The geometry will persist until a new measurement is started, the control is deactivated, or <a href="#OpenLayers.Control.Measure.cancel" class=LFunction id=link8 onMouseOver="ShowTip(event, 'tt2', 'link8')" onMouseOut="HideTip('tt2')">cancel</a> is called. [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.immediate"></a>immediate</h3><div class=CBody><p>{Boolean} Activates the immediate measurement so that the “measurepartial” event is also fired once the measurement sketch is modified.  Default is false.</p></div></div></div>
@@ -41,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ModifyFeature-js.html b/doc/apidocs/files/OpenLayers/Control/ModifyFeature-js.html
index 813973d..df727c7 100644
--- a/doc/apidocs/files/OpenLayers/Control/ModifyFeature-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ModifyFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ModifyFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,10 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ModifyFeature"></a>OpenLayers.<wbr>Control.<wbr>ModifyFeature</h1><div class=CBody><p>Control to modify features.   When activated, a click renders the vertices of a feature - these vertices can then be dragged.   By default, the delete key will delete the vertex under the mouse.   New features are added by dragging “virtual vertices” between vertices [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ModifyFeature"></a>OpenLayers.<wbr>Control.<wbr>ModifyFeature</h1><div class=CBody><p>Control to modify features.   When activated, a click renders the vertices of a feature - these vertices can then be dragged.   By default, the delete key will delete the vertex under the mouse.   New features are added by dragging “virtual vertices” between vertices [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.Properties"></a>Properties</h3></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.documentDrag"></a>documentDrag</h3><div class=CBody><p>{Boolean} If set to true, dragging vertices will continue even if the mouse cursor leaves the map viewport.  Default is false.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.geometryTypes"></a>geometryTypes</h3><div class=CBody><p>{Array(String)} To restrict modification to a limited set of geometry types, send a list of strings corresponding to the geometry class names.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.clickout"></a>clickout</h3><div class=CBody><p>{Boolean} Unselect features when clicking outside any feature.  Default is true.</p></div></div></div>
@@ -52,7 +54,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Deactivate the control.</p><h4 class=CHeading>Returns</h4><p>{Boolean} Successfully deactivated the control.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.selectFeature"></a>selectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>selectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.selectFeature"></a>selectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>selectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.unselectFeature"></a>unselectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unselectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
 
@@ -72,10 +74,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/MousePosition-js.html b/doc/apidocs/files/OpenLayers/Control/MousePosition-js.html
index f028507..a432185 100644
--- a/doc/apidocs/files/OpenLayers/Control/MousePosition-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/MousePosition-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.MousePosition - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,25 +11,30 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.MousePosition"></a>OpenLayers.<wbr>Control.<wbr>MousePosition</h1><div class=CBody><p>The MousePosition control displays geographic coordinates of the mouse pointer, as it is moved about the map.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip(' [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.MousePosition"></a>OpenLayers.<wbr>Control.<wbr>MousePosition</h1><div class=CBody><p>The MousePosition control displays geographic coordinates of the mouse pointer, as it is moved about the map.</p><p>You can use the <a href="#OpenLayers.Control.MousePosition.prefix" class=LProperty id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">prefix</a>- o [...]
+    prefix: '<a target="_blank" ' +
+        'href="http://spatialreference.org/ref/epsg/4326/">' +
+        'EPSG:4326</a> coordinates: '
+    }
+);</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Control.MousePosition" >OpenLayers.<wbr>Contro [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.autoActivate"></a>autoActivate</h3><div class=CBody><p>{Boolean} Activate the control when it is added to a map.   Default is true.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.prefix"></a>prefix</h3><div class=CBody><p>{String}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.prefix"></a>prefix</h3><div class=CBody><p>{String} A string to be prepended to the current pointers coordinates when it is rendered.   Defaults to the empty string ‘’.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.separator"></a>separator</h3><div class=CBody><p>{String}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.separator"></a>separator</h3><div class=CBody><p>{String} A string to be used to seperate the two coordinates from each other.   Defaults to the string ‘, ‘, which will result in a rendered coordinate of e.g.  ‘42.12, 21.22’.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.suffix"></a>suffix</h3><div class=CBody><p>{String}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.suffix"></a>suffix</h3><div class=CBody><p>{String} A string to be appended to the current pointers coordinates when it is rendered.   Defaults to the empty string ‘’.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.numDigits"></a>numDigits</h3><div class=CBody><p>{Integer}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.numDigits"></a>numDigits</h3><div class=CBody><p>{Integer} The number of digits each coordinate shall have when being rendered, Defaults to 5.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.granularity"></a>granularity</h3><div class=CBody><p>{Integer}</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.emptyString"></a>emptyString</h3><div class=CBody><p>{String} Set this to some value to set when the mouse is outside the map.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">OpenLayers.Projection</a>} The projection in which the mouse position is displayed</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt1', 'link7')" onMouseOut="HideTip('tt1')">OpenLayers.Projection</a>} The projection in which the mouse position is displayed.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.Constructor"></a>Constructor</h3></div></div>
 
@@ -47,15 +52,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deac [...]
+<div class=CToolTip id="tt1"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deac [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/NavToolbar-js.html b/doc/apidocs/files/OpenLayers/Control/NavToolbar-js.html
index db6d37f..4661892 100644
--- a/doc/apidocs/files/OpenLayers/Control/NavToolbar-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/NavToolbar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.NavToolbar - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Navigation-js.html b/doc/apidocs/files/OpenLayers/Control/Navigation-js.html
index 6962745..994f2d6 100644
--- a/doc/apidocs/files/OpenLayers/Control/Navigation-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Navigation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Navigation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/NavigationHistory-js.html b/doc/apidocs/files/OpenLayers/Control/NavigationHistory-js.html
index b250ad7..b6c0fb7 100644
--- a/doc/apidocs/files/OpenLayers/Control/NavigationHistory-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/NavigationHistory-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.NavigationHistory - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/OverviewMap-js.html b/doc/apidocs/files/OpenLayers/Control/OverviewMap-js.html
index aa5ecdb..d8e0ab9 100644
--- a/doc/apidocs/files/OpenLayers/Control/OverviewMap-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/OverviewMap-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.OverviewMap - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.OverviewMap"></a>OpenLayers.<wbr>Control.<wbr>OverviewMap</h1><div class=CBody><p>The OverMap control creates a small overview map, useful to display the extent of a zoomed map and your main map and provide additional navigation options to the User.   By default the overview map is drawn in the lower right corner of the main map.  Create a new overview map with the <a [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.OverviewMap"></a>OpenLayers.<wbr>Control.<wbr>OverviewMap</h1><div class=CBody><p>The OverMap control creates a small overview map, useful to display the extent of a zoomed map and your main map and provide additional navigation options to the User.   By default the overview map is drawn in the lower right corner of the main map.  Create a new overview map with the <a [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.Properties"></a>Properties</h3></div></div>
 
@@ -41,6 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.maximized"></a>maximized</h3><div class=CBody><p>{Boolean} Start as maximized (visible).  Defaults to false.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.maximizeTitle"></a>maximizeTitle</h3><div class=CBody><p>{String}  This property is used for showing a tooltip over the maximize div.  Defaults to “” (no title).</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.minimizeTitle"></a>minimizeTitle</h3><div class=CBody><p>{String}  This property is used for showing a tooltip over the minimize div.  Defaults to “” (no title).</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.OpenLayers.Control.OverviewMap"></a>OpenLayers.<wbr>Control.<wbr>OverviewMap</h3><div class=CBody><p>Create a new overview map</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Properties of this object will be set on the overview map object.   Note, to set optio [...]
@@ -55,10 +59,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Pan-js.html b/doc/apidocs/files/OpenLayers/Control/Pan-js.html
index 4c8c893..13d8abe 100644
--- a/doc/apidocs/files/OpenLayers/Control/Pan-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Pan-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Pan - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/PanPanel-js.html b/doc/apidocs/files/OpenLayers/Control/PanPanel-js.html
index 0a61ef1..a9d7bad 100644
--- a/doc/apidocs/files/OpenLayers/Control/PanPanel-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/PanPanel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PanPanel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/PanZoom-js.html b/doc/apidocs/files/OpenLayers/Control/PanZoom-js.html
index 33030a7..7991148 100644
--- a/doc/apidocs/files/OpenLayers/Control/PanZoom-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/PanZoom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PanZoom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/PanZoomBar-js.html b/doc/apidocs/files/OpenLayers/Control/PanZoomBar-js.html
index c8d3d04..cfde0ba 100644
--- a/doc/apidocs/files/OpenLayers/Control/PanZoomBar-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/PanZoomBar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PanZoomBar - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Panel-js.html b/doc/apidocs/files/OpenLayers/Control/Panel-js.html
index 1758110..6db7d9d 100644
--- a/doc/apidocs/files/OpenLayers/Control/Panel-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Panel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Panel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -65,10 +65,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Permalink-js.html b/doc/apidocs/files/OpenLayers/Control/Permalink-js.html
index 4232733..5db25bc 100644
--- a/doc/apidocs/files/OpenLayers/Control/Permalink-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Permalink-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Permalink - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/PinchZoom-js.html b/doc/apidocs/files/OpenLayers/Control/PinchZoom-js.html
index 8a2e689..428e3fb 100644
--- a/doc/apidocs/files/OpenLayers/Control/PinchZoom-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/PinchZoom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PinchZoom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,21 +11,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h1><div class=CBody><h4 class=CHeading>Inherits</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorde [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h1><div class=CBody><h4 class=CHeading>Inherits</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorde [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.autoActivate"></a>autoActivate</h3><div class=CBody><p>{Boolean} Activate the control when it is added to a map.   Default is true.</p></div></div></div>
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Constructor"></a>Constructor</h3></div></div>
-
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h3><div class=CBody><p>Create a control for zooming with pinch gestures.   This works on devices with multi-touch support.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.preserveCenter"></a>preserveCenter</h3><div class=CBody><p>{Boolean} Set this to true if you don’t want the map center to change while pinching.  For example you may want to set preserveCenter to true when the user location is being watched and you want to preserve the user location at the center of the map even if he zooms in or out using pinch.  This property’s value ca [...]
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Functions"></a>Functions</h3></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.handlerOptions"></a>handlerOptions</h3><div class=CBody><p>{Object} Used to set non-default properties on the pinch handler</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.activate"></a>activate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote><p>Activate this control.   Must be called after the control is added to a map.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The control was successfully activated.</p></div></div></div>
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Deactivate this control.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The control was successfully deactivated.</p></div></div></div>
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h3><div class=CBody><p>Create a control for zooming with pinch gestures.   This works on devices with multi-touch support.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object [...]
 
 </div><!--Content-->
 
@@ -33,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote>Activate this control. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote>Deactivate this control.</div></div><div class=CT [...]
+<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/SLDSelect-js.html b/doc/apidocs/files/OpenLayers/Control/SLDSelect-js.html
index 5aed6fc..e03292e 100644
--- a/doc/apidocs/files/OpenLayers/Control/SLDSelect-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/SLDSelect-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.SLDSelect - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -32,7 +32,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
         layerOptions: {
             styleMap: new OpenLayers.StyleMap({
                 "default": {strokeColor: "yellow"}
-            });
+            })
         }
     }
 });</pre></blockquote></div></div></div>
@@ -43,7 +43,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.OpenLayers.Control.SLDSelect"></a>OpenLayers.<wbr>Control.<wbr>SLDSelect</h3><div class=CBody><p>Create a new control for selecting features in WMS layers using Styled Layer Descriptor (SLD).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handler</td><td class=CDLDescription>{<a href="../../deprecated-js.html#Op [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.OpenLayers.Control.SLDSelect"></a>OpenLayers.<wbr>Control.<wbr>SLDSelect</h3><div class=CBody><p>Create a new control for selecting features in WMS layers using Styled Layer Descriptor (SLD).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handler</td><td class=CDLDescription>{<a href="../BaseTypes/Class-js.html# [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.Functions"></a>Functions</h3></div></div>
 
@@ -53,7 +53,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Deactivate the control.  If clearOnDeactivate is true, remove the selection layer(s).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.setLayers"></a>setLayers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setLayers: function(</td><td class="PParameter  prettyprint " nowrap>layers</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.setLayers"></a>setLayers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setLayers: function(</td><td class="PParameter  prettyprint " nowrap>layers</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
 
 </div><!--Content-->
 
@@ -61,15 +61,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Take care of things that are not handled in superclass.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table borde [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Take care of things that are not handled in superclass.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table borde [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Scale-js.html b/doc/apidocs/files/OpenLayers/Control/Scale-js.html
index 9870ed3..763c70f 100644
--- a/doc/apidocs/files/OpenLayers/Control/Scale-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Scale-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Scale - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ScaleLine-js.html b/doc/apidocs/files/OpenLayers/Control/ScaleLine-js.html
index be90278..ebe5975 100644
--- a/doc/apidocs/files/OpenLayers/Control/ScaleLine-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ScaleLine-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ScaleLine - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/SelectFeature-js.html b/doc/apidocs/files/OpenLayers/Control/SelectFeature-js.html
index ad2f1fd..00ef2f6 100644
--- a/doc/apidocs/files/OpenLayers/Control/SelectFeature-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/SelectFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.SelectFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Snapping-js.html b/doc/apidocs/files/OpenLayers/Control/Snapping-js.html
index f91b5da..bda53b5 100644
--- a/doc/apidocs/files/OpenLayers/Control/Snapping-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Snapping-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Snapping - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,7 +23,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.OpenLayers.Control.Snapping"></a>OpenLayers.<wbr>Control.<wbr>Snapping</h3><div class=CBody><p>Creates a new snapping control.  A control is constructed with an editable layer and a set of configuration objects for target layers.  While the control is active, dragging vertices while drawing new features or modifying existing features on the editable layer will engage snapping to fe [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.OpenLayers.Control.Snapping"></a>OpenLayers.<wbr>Control.<wbr>Snapping</h3><div class=CBody><p>Creates a new snapping control.  A control is constructed with an editable layer and a set of configuration objects for target layers.  While the control is active, dragging vertices while drawing new features or modifying existing features on the editable layer will engage snapping to fe [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.Functions"></a>Functions</h3></div></div>
 
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Split-js.html b/doc/apidocs/files/OpenLayers/Control/Split-js.html
index 206e9f8..c7ebca5 100644
--- a/doc/apidocs/files/OpenLayers/Control/Split-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Split-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Split - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/TouchNavigation-js.html b/doc/apidocs/files/OpenLayers/Control/TouchNavigation-js.html
index a613c49..2f5444b 100644
--- a/doc/apidocs/files/OpenLayers/Control/TouchNavigation-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/TouchNavigation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.TouchNavigation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.TouchNavigation"></a>OpenLayers.<wbr>Control.<wbr>TouchNavigation</h1><div class=CBody><p>The navigation control handles map browsing with touch events (dragging, double-tapping, tap with two fingers, and pinch zoom).   Create a new control with the <a href="#OpenLayers.Control.TouchNavigation.OpenLayers.Control.TouchNavigation" class=LConstructor id=link1 onMouseOver="Sho [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.TouchNavigation"></a>OpenLayers.<wbr>Control.<wbr>TouchNavigation</h1><div class=CBody><p>The navigation control handles map browsing with touch events (dragging, double-tapping, tap with two fingers, and pinch zoom).   Create a new control with the <a href="#OpenLayers.Control.TouchNavigation.OpenLayers.Control.TouchNavigation" class=LConstructor id=link1 onMouseOver="Sho [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.TouchNavigation.Properties"></a>Properties</h3></div></div>
 
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/TransformFeature-js.html b/doc/apidocs/files/OpenLayers/Control/TransformFeature-js.html
index 4873a95..8b31d7f 100644
--- a/doc/apidocs/files/OpenLayers/Control/TransformFeature-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/TransformFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.TransformFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -70,10 +70,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/UTFGrid-js.html b/doc/apidocs/files/OpenLayers/Control/UTFGrid-js.html
index 014f1df..61acdcc 100644
--- a/doc/apidocs/files/OpenLayers/Control/UTFGrid-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/UTFGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.UTFGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -52,10 +52,10 @@ var control = new OpenLayers.Control.UTFGrid({
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html b/doc/apidocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html
index 0be53f2..e82f78f 100644
--- a/doc/apidocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.WMSGetFeatureInfo - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo"></a>OpenLayers.<wbr>Control.<wbr>WMSGetFeatureInfo</h1><div class=CBody><p>The WMSGetFeatureInfo control uses a WMS query to get information about a point on the map.   The information may be in a display-friendly format such as HTML, or a machine-friendly format such as GML, depending on the server’s capabilities and the client’s configurati [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo"></a>OpenLayers.<wbr>Control.<wbr>WMSGetFeatureInfo</h1><div class=CBody><p>The WMSGetFeatureInfo control uses a WMS query to get information about a point on the map.   The information may be in a display-friendly format such as HTML, or a machine-friendly format such as GML, depending on the server’s capabilities and the client’s configurati [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.Properties"></a>Properties</h3></div></div>
 
@@ -21,16 +21,34 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.maxFeatures"></a>maxFeatures</h3><div class=CBody><p>{Integer} Maximum number of features to return from a WMS query.  This sets the feature_count parameter on WMS GetFeatureInfo requests.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.clickCallback"></a>clickCallback</h3><div class=CBody><p>{String} The click callback to register in the {<a href="../Handler/Click-js.html#OpenLayers.Handler.Click" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt1', 'link3')" onMouseOut="HideTip('tt1')">OpenLayers.Handler.Click</a>} object created when the hover option is set to false.  Default is “click”.</p></d [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.clickCallback"></a>clickCallback</h3><div class=CBody><p>{String} The click callback to register in the {<a href="../Handler/Click-js.html#OpenLayers.Handler.Click" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">OpenLayers.Handler.Click</a>} object created when the hover option is set to false.  Default is “click”.</p></d [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.output"></a>output</h3><div class=CBody><p>{String} Either “features” or “object”.  When triggering a getfeatureinfo request should we pass on an array of features or an object with with a “features” property and other properties (such as the url of the WMS).  Default is “features”.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.layers"></a>layers</h3><div class=CBody><p>{Array(<a href="../Layer/WMS-js.html#OpenLayers.Layer.WMS" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt2', 'link7')" onMouseOut="HideTip('tt2')">OpenLayers.Layer.WMS</a>)} The layers to query for feature info.  If omitted, all map WMS layers with a url that matches this <a href="#OpenLayers.Control.WMSGetFeatureInfo.url" class=LP [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.queryVisible"></a>queryVisible</h3><div class=CBody><p>{Boolean} If true, filter out hidden layers when searching the map for layers to query.   Default is false.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.url"></a>url</h3><div class=CBody><p>{String} The URL of the WMS service to use.   If not provided, the url of the first eligible layer will be used.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.layerUrls"></a>layerUrls</h3><div class=CBody><p>{Array(String)} Optional list of urls for layers that should be queried.  This can be used when the layer url differs from the url used for making GetFeatureInfo requests (in the case of a layer using cached tiles).</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.infoFormat"></a>infoFormat</h3><div class=CBody><p>{String} The mimetype to request from the server.  If you are using drillDown mode and have multiple servers that do not share a common infoFormat, you can override the control’s infoFormat by providing an INFO_FORMAT parameter in your <a href="../Layer/WMS-js.html#OpenLayers.Layer.WMS" class=LClass id=link10 onMouseOver="Sh [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.vendorParams"></a>vendorParams</h3><div class=CBody><p>{Object} Additional parameters that will be added to the request, for WMS implementations that support them.  This could e.g. look like</p><blockquote><pre class="prettyprint">{
+    radius: 5
+}</pre></blockquote></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.format"></a>format</h3><div class=CBody><p>{<a href="../Format-js.html#OpenLayers.Format" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt3', 'link11')" onMouseOut="HideTip('tt3')">OpenLayers.Format</a>} A format for parsing GetFeatureInfo responses.  Default is <a href="../Format/WMSGetFeatureInfo-js.html#OpenLayers.Format.WMSGetFeatureInfo" class=LClass id=link12 onMouseOv [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.formatOptions"></a>formatOptions</h3><div class=CBody><p>{Object} Optional properties to set on the format (if one is not provided in the <a href="#OpenLayers.Control.WMSGetFeatureInfo.format" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt4', 'link13')" onMouseOut="HideTip('tt4')">format</a> property.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.handlerOptions"></a>handlerOptions</h3><div class=CBody><p>{Object} Additional options for the handlers used by this control, e.g.</p><blockquote><pre class="prettyprint">{
     "click": {delay: 100},
     "hover": {delay: 300}
 }</pre></blockquote></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} Events instance for listeners and triggering control specific events.</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">control.events.register(type, obj, listener);</pre></blockq [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} Events instance for listeners and triggering control specific events.</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">control.events.register(type, obj, listener);</pre></blockq [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.WMSGetFeatureInfo.Constructor"></a>Constructor</h3></div></div>
 
@@ -42,15 +60,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>A handler for mouse clicks. </div></div><div class=CToolTip id="tt2"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt3"><div class=CProperty>{OpenLayers.Events} Events instance for listeners and triggering control specific events.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>A handler for mouse clicks. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt3"><div class=CClass>Base class for format reading/writing a variety of formats. </div></div><div class=CToolTip id="tt4"><div class=CProperty>{OpenLayers.Format} A format for parsing GetFeatureInfo responses. </div></div><div cla [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html b/doc/apidocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html
index 578e414..f14c322 100644
--- a/doc/apidocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.WMTSGetFeatureInfo - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -42,10 +42,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/Zoom-js.html b/doc/apidocs/files/OpenLayers/Control/Zoom-js.html
index f0597b7..32ba9e7 100644
--- a/doc/apidocs/files/OpenLayers/Control/Zoom-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/Zoom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Zoom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomInId"></a>zoomInId</h3><div class=CBody><p>{String} Instead of having the control create a zoom in link, you can provide the identifier for an anchor element already added to the document.  By default, an element with id “olZoomInLink” will be searched for and used if it exists.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomOutText"></a>zoomOutText</h3><div class=CBody><p>{String} Text for zoom-out link.   Default is “-”.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomOutText"></a>zoomOutText</h3><div class=CBody><p>{String} Text for zoom-out link.   Default is “\u2212”.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomOutId"></a>zoomOutId</h3><div class=CBody><p>{String} Instead of having the control create a zoom out link, you can provide the identifier for an anchor element already added to the document.  By default, an element with id “olZoomOutLink” will be searched for and used if it exists.</p></div></div></div>
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ZoomBox-js.html b/doc/apidocs/files/OpenLayers/Control/ZoomBox-js.html
index 651dab2..635536e 100644
--- a/doc/apidocs/files/OpenLayers/Control/ZoomBox-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ZoomBox-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomBox - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomBox"></a>OpenLayers.<wbr>Control.<wbr>ZoomBox</h1><div class=CBody><p>The ZoomBox control enables zooming directly to a given extent, by drawing a box on the map.  The box is drawn by holding down shift, whilst dragging the mouse.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link1 onMouseOver="ShowTip(e [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomBox"></a>OpenLayers.<wbr>Control.<wbr>ZoomBox</h1><div class=CBody><p>The ZoomBox control enables zooming directly to a given extent, by drawing a box on the map.  The box is drawn by holding down shift, whilst dragging the mouse.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link1 onMouseOver="ShowTip(e [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.keyMask"></a>keyMask</h3><div class=CBody><p>{Integer} Zoom only occurs if the keyMask matches the combination of keys down.  Use bitwise operators and one or more of the <a href="../Handler-js.html#OpenLayers.Handler" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Handler</a> constants to construct a keyMask.  Leave null if no [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.alwaysZoom"></a>alwaysZoom</h3><div class=CBody><p>{Boolean} Always zoom in/out, when box drawed</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.alwaysZoom"></a>alwaysZoom</h3><div class=CBody><p>{Boolean} Always zoom in/out when box drawn, even if the zoom level does not change.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.zoomOnClick"></a>zoomOnClick</h3><div class=CBody><p>{Boolean} Should we zoom when no box was dragged, i.e. the user only clicked?  Default is true.</p></div></div></div>
 
 </div><!--Content-->
 
@@ -25,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ZoomIn-js.html b/doc/apidocs/files/OpenLayers/Control/ZoomIn-js.html
index f70ce1a..a7e8658 100644
--- a/doc/apidocs/files/OpenLayers/Control/ZoomIn-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ZoomIn-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomIn - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ZoomOut-js.html b/doc/apidocs/files/OpenLayers/Control/ZoomOut-js.html
index fdedb19..59729a2 100644
--- a/doc/apidocs/files/OpenLayers/Control/ZoomOut-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ZoomOut-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomOut - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ZoomPanel-js.html b/doc/apidocs/files/OpenLayers/Control/ZoomPanel-js.html
index a94dde8..c7eef9d 100644
--- a/doc/apidocs/files/OpenLayers/Control/ZoomPanel-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ZoomPanel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomPanel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html b/doc/apidocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html
index 56e43e0..2308663 100644
--- a/doc/apidocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html
+++ b/doc/apidocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomToMaxExtent - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Events-js.html b/doc/apidocs/files/OpenLayers/Events-js.html
index f136d93..c104ef5 100644
--- a/doc/apidocs/files/OpenLayers/Events-js.html
+++ b/doc/apidocs/files/OpenLayers/Events-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Event - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,7 +47,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.includeXY"></a>includeXY</h3><div class=CBody><p>{Boolean} Should the .xy property automatically be created for browser mouse events?  In general, this should be false.  If it is true, then mouse events will automatically generate a ‘.xy’ property on the event object that is passed.  (Prior to OpenLayers 2.7, this was true by default.)  Otherwise, you can call the getMouse [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.extensions"></a>extensions</h3><div class=CBody><p>{Object} Event extensions registered with this instance.  Keys are event types, values are {OpenLayers.Events.*} extension instances or {Boolean} for events that an instantiated extension provides in addition to the one it was created for.</p><p>Extensions create an event in addition to browser events, which usually fires when a sequence of browser  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.extensions"></a>extensions</h3><div class=CBody><p>{Object} Event extensions registered with this instance.  Keys are event types, values are {OpenLayers.Events.*} extension instances or {Boolean} for events that an instantiated extension provides in addition to the one it was created for.</p><p>Extensions create an event in addition to browser events, which usually fires when a sequence of browser  [...]
     initialize: function(target) {
         this.target = target;
         this.target.register("click", this, this.doStuff, {extension: true});
@@ -89,7 +89,7 @@ OpenLayers.Events.fooend = OpenLayers.Events.foostart;</pre></blockquote></div><
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.addEventType"></a>addEventType</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addEventType: function(</td><td class="PParameter  prettyprint " nowrap>eventName</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.on"></a>on</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>on: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.on"></a>on</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>on: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
 events.on({"loadstart": loadStartListener});
 
 // this is equivalent to the following
@@ -110,7 +110,7 @@ events.register("loadend", object, loadEndListener);</pre></blockquote
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.registerPriority"></a>registerPriority</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>registerPriority: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.un"></a>un</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.un"></a>un</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
 events.un({"loadstart": loadStartListener});
 
 // this is equivalent to the following
@@ -129,7 +129,7 @@ events.unregister("loadend", object, loadEndListener);</pre></blockquo
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.unregister"></a>unregister</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unregister: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.triggerEvent"></a>triggerEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>triggerEvent: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParam [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.triggerEvent"></a>triggerEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>triggerEvent: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParam [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.clearMouseCache"></a>clearMouseCache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearMouseCache: function()</td></tr></table></blockquote><p>Clear cached data about the mouse position.  This should be called any time the element that events are registered on changes position within the page.</p></div></div></div>
 
@@ -139,15 +139,15 @@ events.unregister("loadend", object, loadEndListener);</pre></blockquo
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function ()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addEventType: function(</td><td class="PParamet [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function ()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addEventType: function(</td><td class="PParamet [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Events/buttonclick-js.html b/doc/apidocs/files/OpenLayers/Events/buttonclick-js.html
index 949fd42..d5dac4c 100644
--- a/doc/apidocs/files/OpenLayers/Events/buttonclick-js.html
+++ b/doc/apidocs/files/OpenLayers/Events/buttonclick-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Events.buttonclick - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Events/featureclick-js.html b/doc/apidocs/files/OpenLayers/Events/featureclick-js.html
new file mode 100644
index 0000000..0e930cb
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Events/featureclick-js.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Events.featureclick - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Events.featureclick"></a>OpenLayers.<wbr>Events.<wbr>featureclick</h1><div class=CBody><p>Extension event type for handling feature click events, including overlapping features.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>featureclick</li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspa [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.OpenLayers.Events.featureclick"></a>OpenLayers.<wbr>Events.<wbr>featureclick</h3><div class=CBody><p>Create a new featureclick event type.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>target</td><td class=CDLDescription>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} The e [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Clean up.</p></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events.nofeatureclick"></a>OpenLayers.<wbr>Events.<wbr>nofeatureclick</h2><div class=CBody><p>Extension event type for handling click events that do not hit a feature.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>nofeatureclick</li></ul></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events.featureover"></a>OpenLayers.<wbr>Events.<wbr>featureover</h2><div class=CBody><p>Extension event type for handling hovering over a feature.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>featureover</li></ul></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events.featureout"></a>OpenLayers.<wbr>Events.<wbr>featureout</h2><div class=CBody><p>Extension event type for handling leaving a feature.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>featureout</li></ul></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Feature-js.html b/doc/apidocs/files/OpenLayers/Feature-js.html
index 32aa007..72dca6a 100644
--- a/doc/apidocs/files/OpenLayers/Feature-js.html
+++ b/doc/apidocs/files/OpenLayers/Feature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Feature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,15 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h1><div class=CBody><p>Features are combinations of geography and attributes.  The OpenLayers.Feature class specifically combines a marker and a lonlat.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a hr [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h1><div class=CBody><p>Features are combinations of geography and attributes.  The OpenLayers.Feature class specifically combines a marker and a lonlat.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a hr [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.popupClass"></a>popupClass</h3><div class=CBody><p>{<a href="../deprecated-js.html#OpenLayers.Class" class=LClass >OpenLayers.Class</a>} The class which will be used to instantiate a new Popup.  Default is <a href="Popup/Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.popupClass"></a>popupClass</h3><div class=CBody><p>{<a href="BaseTypes/Class-js.html#OpenLayers.Class" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt1', 'link2')" onMouseOut="HideTip('tt1')">OpenLayers.Class</a>} The class which will be used to instantiate a new Popup.  Default is <a href="Popup/Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>.</p [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h3><div class=CBody><p>Constructor for features.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescripti [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h3><div class=CBody><p>Constructor for features.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescripti [...]
 
 </div><!--Content-->
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([4, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([4, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CConstructor>Constructor for features.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CConstructor>Base class used to construct all other classes. </div></div><div class=CToolTip id="tt2"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt3"><div class=CConstructor>Constructor for features.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Feature/Vector-js.html b/doc/apidocs/files/OpenLayers/Feature/Vector-js.html
index 8470468..e214f5c 100644
--- a/doc/apidocs/files/OpenLayers/Feature/Vector-js.html
+++ b/doc/apidocs/files/OpenLayers/Feature/Vector-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Feature.Vector - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,7 +37,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Vector.Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Vector.OpenLayers.Feature.Vector.style"></a>OpenLayers.<wbr>Feature.<wbr>Vector.<wbr>style</h3><div class=CBody><p>OpenLayers features can have a number of style attributes.  The ‘default’ style will typically be used if no other style is specified.  These styles correspond for the most part, to the styling properties defined by the SVG standard.  Information on fill propertie [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Vector.OpenLayers.Feature.Vector.style"></a>OpenLayers.<wbr>Feature.<wbr>Vector.<wbr>style</h3><div class=CBody><p>OpenLayers features can have a number of style attributes.  The ‘default’ style will typically be used if no other style is specified.  These styles correspond for the most part, to the styling properties defined by the SVG standard.  Information on fill propertie [...]
 
 </div><!--Content-->
 
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([4, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([4, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Filter-js.html b/doc/apidocs/files/OpenLayers/Filter-js.html
index f36f0be..6547a6d 100644
--- a/doc/apidocs/files/OpenLayers/Filter-js.html
+++ b/doc/apidocs/files/OpenLayers/Filter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Filter/Comparison-js.html b/doc/apidocs/files/OpenLayers/Filter/Comparison-js.html
index 050a3e1..e99d0a8 100644
--- a/doc/apidocs/files/OpenLayers/Filter/Comparison-js.html
+++ b/doc/apidocs/files/OpenLayers/Filter/Comparison-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Comparison - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -15,7 +15,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.type"></a>type</h3><div class=CBody><p>{String} type: type of the comparison.  This is one of</p><ul><li>OpenLayers.Filter.Comparison.EQUAL_TO                 = “==”;</li><li>OpenLayers.Filter.Comparison.NOT_EQUAL_TO             = “!=”;</li><li>OpenLayers.Filter.Comparison.LESS_THAN                = “<”;</li><li>OpenLayers.Filter.Comparison.GREATER_T [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.type"></a>type</h3><div class=CBody><p>{String} type: type of the comparison.  This is one of</p><ul><li>OpenLayers.Filter.Comparison.EQUAL_TO                 = “==”;</li><li>OpenLayers.Filter.Comparison.NOT_EQUAL_TO             = “!=”;</li><li>OpenLayers.Filter.Comparison.LESS_THAN                = “<”;</li><li>OpenLayers.Filter.Comparison.GREATER_T [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.property"></a>property</h3><div class=CBody><p>{String} name of the context property to compare</p></div></div></div>
 
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Filter/FeatureId-js.html b/doc/apidocs/files/OpenLayers/Filter/FeatureId-js.html
index 712dfc0..a096f7e 100644
--- a/doc/apidocs/files/OpenLayers/Filter/FeatureId-js.html
+++ b/doc/apidocs/files/OpenLayers/Filter/FeatureId-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.FeatureId - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Filter/Function-js.html b/doc/apidocs/files/OpenLayers/Filter/Function-js.html
index 5381365..1ae749a 100644
--- a/doc/apidocs/files/OpenLayers/Filter/Function-js.html
+++ b/doc/apidocs/files/OpenLayers/Filter/Function-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Function - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Filter/Logical-js.html b/doc/apidocs/files/OpenLayers/Filter/Logical-js.html
index ab0aead..6d7445e 100644
--- a/doc/apidocs/files/OpenLayers/Filter/Logical-js.html
+++ b/doc/apidocs/files/OpenLayers/Filter/Logical-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Logical - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Filter/Spatial-js.html b/doc/apidocs/files/OpenLayers/Filter/Spatial-js.html
index 297a279..95d1bae 100644
--- a/doc/apidocs/files/OpenLayers/Filter/Spatial-js.html
+++ b/doc/apidocs/files/OpenLayers/Filter/Spatial-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Spatial - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format-js.html b/doc/apidocs/files/OpenLayers/Format-js.html
index 9505d58..29d47c6 100644
--- a/doc/apidocs/files/OpenLayers/Format-js.html
+++ b/doc/apidocs/files/OpenLayers/Format-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/ArcXML-js.html b/doc/apidocs/files/OpenLayers/Format/ArcXML-js.html
index 993303b..ee7a939 100644
--- a/doc/apidocs/files/OpenLayers/Format/ArcXML-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/ArcXML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.ArcXML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML"></a>OpenLayers.<wbr>Format.<wbr>ArcXML</h1><div class=CBody><p>Read/Wite ArcXML.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.OpenLayers.Format.ArcXML" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.ArcXML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML"></a>OpenLayers.<wbr>Format.<wbr>ArcXML</h1><div class=CBody><p>Read/Write ArcXML.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.OpenLayers.Format.ArcXML" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.ArcXML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Constructor"></a>Constructor</h3></div></div>
 
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>iserror: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Check to see if the response from the server was an error.</div></div><div class=CToolT [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>iserror: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Check to see if the response from the server was an error.</div></div><div class=CToolT [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/ArcXML/Features-js.html b/doc/apidocs/files/OpenLayers/Format/ArcXML/Features-js.html
index 8d34c07..f858fba 100644
--- a/doc/apidocs/files/OpenLayers/Format/ArcXML/Features-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/ArcXML/Features-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.ArcXML.Features - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnL [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML.Features"></a>OpenLayers.<wbr>Format.<wbr>ArcXML.<wbr>Features</h1><div class=CBody><p>Read/Wite ArcXML features.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.Features.OpenLayers.Format.ArcXML.Features" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.ArcXML.Features</a> const [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML.Features"></a>OpenLayers.<wbr>Format.<wbr>ArcXML.<wbr>Features</h1><div class=CBody><p>Read/Write ArcXML features.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.Features.OpenLayers.Format.ArcXML.Features" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.ArcXML.Features</a> cons [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.Constructor"></a>Constructor</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
 
 </div><!--Content-->
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string of ArcXML, and return a set of OpenLayers features.</div></div><di [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string of ArcXML, and return a set of OpenLayers features.</div></div><di [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/Atom-js.html b/doc/apidocs/files/OpenLayers/Format/Atom-js.html
index 5334dfb..20a3eb9 100644
--- a/doc/apidocs/files/OpenLayers/Format/Atom-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Atom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Atom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Atom"></a>OpenLayers.<wbr>Format.Atom</h1><div class=CBody><p>Read/write Atom feeds.  Create a new instance with the <OpenLayers.Format.AtomFeed> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STit [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Atom"></a>OpenLayers.<wbr>Format.Atom</h1><div class=CBody><p>Read/write Atom feeds.  Create a new instance with the <OpenLayers.Format.AtomFeed> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.Properties"></a>Properties</h3></div></div>
 
@@ -27,7 +27,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Seri [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Seri [...]
 
 </div><!--Content-->
 
@@ -35,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Serialize or more feature nodes to Atom documents.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Serialize or more feature nodes to Atom documents.</div></div><div class=CToolTip id= [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/CQL-js.html b/doc/apidocs/files/OpenLayers/Format/CQL-js.html
index ea9f17a..b6af06b 100644
--- a/doc/apidocs/files/OpenLayers/Format/CQL-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/CQL-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CQL - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/CSWGetDomain-js.html b/doc/apidocs/files/OpenLayers/Format/CSWGetDomain-js.html
index 0928034..18adb93 100644
--- a/doc/apidocs/files/OpenLayers/Format/CSWGetDomain-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/CSWGetDomain-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetDomain - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html b/doc/apidocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html
index 7564a70..39663c1 100644
--- a/doc/apidocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetDomain.v2_0_2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="N [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetDomain.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetDomain.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetDomain v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetDomain.v2_0_2.OpenLayers.Format.CSWGetDomain.v2_0_2" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3') [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetDomain.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetDomain.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetDomain v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetDomain.v2_0_2.OpenLayers.Format.CSWGetDomain.v2_0_2" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3') [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.CSWGetDomain.v2_0_2.Properties"></a>Properties</h3></div></div>
 
@@ -35,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetDomain request.</div></div><div class=CToolTip id="tt2"><div  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetDomain request.</div></div><div class=CToolTip id="tt2"><div  [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/CSWGetRecords-js.html b/doc/apidocs/files/OpenLayers/Format/CSWGetRecords-js.html
index 88dfb38..e9deba2 100644
--- a/doc/apidocs/files/OpenLayers/Format/CSWGetRecords-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/CSWGetRecords-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetRecords - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html b/doc/apidocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html
index 76a0021..72d6c7e 100644
--- a/doc/apidocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetRecords.v2_0_2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetRecords.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetRecords v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetRecords.v2_0_2.OpenLayers.Format.CSWGetRecords.v2_0_2" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip(' [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetRecords.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetRecords v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetRecords.v2_0_2.OpenLayers.Format.CSWGetRecords.v2_0_2" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip(' [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.CSWGetRecords.v2_0_2.Properties"></a>Properties</h3></div></div>
 
@@ -47,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetRecords request.</div></div><div class=CToolTip id="tt2"><div [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetRecords request.</div></div><div class=CToolTip id="tt2"><div [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/Context-js.html b/doc/apidocs/files/OpenLayers/Format/Context-js.html
index 19b6e93..8c4be0e 100644
--- a/doc/apidocs/files/OpenLayers/Format/Context-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Context-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Context - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/EncodedPolyline-js.html b/doc/apidocs/files/OpenLayers/Format/EncodedPolyline-js.html
new file mode 100644
index 0000000..4470406
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Format/EncodedPolyline-js.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.EncodedPolyline - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.EncodedPolyline"></a>OpenLayers.<wbr>Format.<wbr>EncodedPolyline</h1><div class=CBody><p>Class for reading and writing encoded polylines.   Create a new instance with the <a href="#OpenLayers.Format.EncodedPolyline.OpenLayers.Format.EncodedPolyline" class=LConstructor id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">OpenLayers.Format.Enc [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.geometryType"></a>geometryType</h3><div class=CBody><p>{String} Geometry type to output.  One of: linestring (default), linearring, point, multipoint or polygon.  If the geometryType is point, only the first point of the string is returned.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.OpenLayers.Format.EncodedPolyline"></a>OpenLayers.<wbr>Format.<wbr>EncodedPolyline</h3><div class=CBody><p>Create a new parser for encoded polylines</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance</ [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decode"></a>decode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decode: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dims,</td></tr><tr><td></td><t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockqu [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encode"></a>encode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encode: function (</td><td class="PParameter  prettyprint " nowrap>points,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dims,</td></tr><tr><td></td><t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeDeltas"></a>encodeDeltas</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeDeltas: function(</td><td class="PParameter  prettyprint " nowrap>numbers,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dimension,</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeDeltas"></a>decodeDeltas</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeDeltas: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dimension,</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeFloats"></a>encodeFloats</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeFloats: function(</td><td class="PParameter  prettyprint " nowrap>numbers,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeFloats"></a>decodeFloats</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeFloats: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeSignedIntegers"></a>encodeSignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeSignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>numbers</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeSignedIntegers"></a>decodeSignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeSignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeUnsignedIntegers"></a>encodeUnsignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeUnsignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>numbers</td><td class="PAfterParameters  prettyprint "now [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeUnsignedIntegers"></a>decodeUnsignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeUnsignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "now [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Deserialize an encoded polyline string and return a vector feature.</div></div><div cla [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Format/Filter-js.html b/doc/apidocs/files/OpenLayers/Format/Filter-js.html
index 9256fe1..697aad2 100644
--- a/doc/apidocs/files/OpenLayers/Format/Filter-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Filter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter"></a>OpenLayers.<wbr>Format.<wbr>Filter</h1><div class=CBody><p>Read/Wite ogc:Filter.  Create a new instance with the <a href="#OpenLayers.Format.Filter" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.Filter</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.h [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter"></a>OpenLayers.<wbr>Format.<wbr>Filter</h1><div class=CBody><p>Read/Write ogc:Filter.  Create a new instance with the <a href="#OpenLayers.Format.Filter" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.Filter</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js. [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.Properties"></a>Properties</h3></div></div>
 
@@ -29,15 +29,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite ogc:Filter. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><div class=CToolTip id="tt3"><div class=CClass>This class represents an OGC Filter.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read/Write ogc:Filter. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><div class=CToolTip id="tt3"><div class=CClass>This class represents an OGC Filter.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/Filter/v1-js.html b/doc/apidocs/files/OpenLayers/Format/Filter/v1-js.html
index 584bfb5..67cedf6 100644
--- a/doc/apidocs/files/OpenLayers/Format/Filter/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Filter/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h1><div class=CBody><p>Superclass for Filter version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border= [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h1><div class=CBody><p>Superclass for Filter version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../Filter-js.html#OpenLayers.Format.Filter" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.Filter</a> constructor instead.</p><h4 class=CHeading>Parameters</h4 [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../Filter-js.html#OpenLayers.Format.Filter" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.Filter</a> constructor instead.</p><h4 class=CHeading>Parameters</h4 [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.encodeLiteral"></a>encodeLiteral</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeLiteral: function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
 </div><!--Content-->
 
@@ -23,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite ogc:Filter. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeLiteral: function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Generates the string representation of a value for use in Literal elements. </di [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/Filter/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/Filter/v1_0_0-js.html
index 8ca5498..7ae1778 100644
--- a/doc/apidocs/files/OpenLayers/Format/Filter/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Filter/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Parses GML version 2.</div></div><div class=CToolTip id="tt2"><div class=CClass>Superclass for Filter version 1 parsers.</div></div><div class=CToolTip id="tt3"><div class=CClass>Read/Wite ogc:Filter. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Parses GML version 2.</div></div><div class=CToolTip id="tt2"><div class=CClass>Superclass for Filter version 1 parsers.</div></div><div class=CToolTip id="tt3"><div class=CClass>Read/Write ogc:Filter. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/Filter/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/Filter/v1_1_0-js.html
index ecb6343..85c6ba1 100644
--- a/doc/apidocs/files/OpenLayers/Format/Filter/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Filter/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Parses GML version 3.</div></div><div class=CToolTip id="tt2"><div class=CClass>Superclass for Filter version 1 parsers.</div></div><div class=CToolTip id="tt3"><div class=CClass>Read/Wite ogc:Filter. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Parses GML version 3.</div></div><div class=CToolTip id="tt2"><div class=CClass>Superclass for Filter version 1 parsers.</div></div><div class=CToolTip id="tt3"><div class=CClass>Read/Write ogc:Filter. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GML-js.html b/doc/apidocs/files/OpenLayers/Format/GML-js.html
index 6a35800..72db18a 100644
--- a/doc/apidocs/files/OpenLayers/Format/GML-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML"></a>OpenLayers.<wbr>Format.GML</h1><div class=CBody><p>Read/Wite GML.  Create a new instance with the <a href="#OpenLayers.Format.GML.OpenLayers.Format.GML" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.GML</a> constructor.   Supports the GML simple features profile.</p><h4 class=CHeading>Inh [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML"></a>OpenLayers.<wbr>Format.GML</h1><div class=CBody><p>Read/Write GML.  Create a new instance with the <a href="#OpenLayers.Format.GML.OpenLayers.Format.GML" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.GML</a> constructor.   Supports the GML simple features profile.</p><h4 class=CHeading>In [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Properties"></a>Properties</h3></div></div>
 
@@ -39,9 +39,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Gener [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Gener [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
 
@@ -51,15 +51,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string, and return a list of features.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string, and return a list of features.</div></div><div class=CToolTip id= [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GML/Base-js.html b/doc/apidocs/files/OpenLayers/Format/GML/Base-js.html
index a35ac72..745fb21 100644
--- a/doc/apidocs/files/OpenLayers/Format/GML/Base-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GML/Base-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML.Base - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();p [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h1><div class=CBody><p>Superclass for GML parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h1><div class=CBody><p>Superclass for GML parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.Properties"></a>Properties</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.featureNS"></a>featureNS</h3><div class=CBody><p>{String} The feature namespace.   Must be set in the options at construction.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.geometry"></a>geometry</h3><div class=CBody><p>{String} Name of geometry element.   Defaults to “geometry”.  If null, it will be set on <a href="../GML-js.html#OpenLayers.Format.GML.read" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">read</a> when the first geometry is parsed.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.geometry"></a>geometry</h3><div class=CBody><p>{String} Name of geometry element.   Defaults to “geometry”.  If null, it will be set on <a href="../GML-js.html#OpenLayers.Format.GML.read" class=LFunction id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">read</a> when the first geometry is parsed.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.extractAttributes"></a>extractAttributes</h3><div class=CBody><p>{Boolean} Extract attributes from GML.   Default is true.</p></div></div></div>
 
@@ -29,7 +29,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v2-js.html#OpenLayers.Format.GML.v2" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.GML.v2</a> or <a href="v3-js.html#OpenLayers.Format.GML.v3" class=LClass id=li [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v2-js.html#OpenLayers.Format.GML.v2" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.GML.v2</a> or <a href="v3-js.html#OpenLayers.Format.GML.v3" class=LClass id=li [...]
 
 </div><!--Content-->
 
@@ -37,15 +37,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string, and return a list of features.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data f [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GML/v2-js.html b/doc/apidocs/files/OpenLayers/Format/GML/v2-js.html
index c07242a..487444c 100644
--- a/doc/apidocs/files/OpenLayers/Format/GML/v2-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GML/v2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML.v2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GML/v3-js.html b/doc/apidocs/files/OpenLayers/Format/GML/v3-js.html
index bf69f5e..b51813f 100644
--- a/doc/apidocs/files/OpenLayers/Format/GML/v3-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GML/v3-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML.v3 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GPX-js.html b/doc/apidocs/files/OpenLayers/Format/GPX-js.html
index 687b923..3647cf8 100644
--- a/doc/apidocs/files/OpenLayers/Format/GPX-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GPX-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GPX - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GPX"></a>OpenLayers.<wbr>Format.GPX</h1><div class=CBody><p>Read/write GPX parser.  Create a new instance with the <a href="#OpenLayers.Format.GPX.OpenLayers.Format.GPX" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.GPX</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../dep [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GPX"></a>OpenLayers.<wbr>Format.GPX</h1><div class=CBody><p>Read/write GPX parser.  Create a new instance with the <a href="#OpenLayers.Format.GPX.OpenLayers.Format.GPX" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.GPX</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.ht [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.Properties"></a>Properties</h3></div></div>
 
@@ -33,9 +33,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a list [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a list [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>metadata</td><td class="PAfterParameters  pr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>metadata</td><td class="PAfterParameters  pr [...]
 
 </div><!--Content-->
 
@@ -43,15 +43,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a list of features from a GPX doc</div></div><div class=CToolTip id="tt2"><div class [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a list of features from a GPX doc</div></div><div class=CToolTip id="tt2"><div class [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GeoJSON-js.html b/doc/apidocs/files/OpenLayers/Format/GeoJSON-js.html
index 4dea497..6b412fd 100644
--- a/doc/apidocs/files/OpenLayers/Format/GeoJSON-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GeoJSON-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GeoJSON - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/GeoRSS-js.html b/doc/apidocs/files/OpenLayers/Format/GeoRSS-js.html
index f631523..6048b35 100644
--- a/doc/apidocs/files/OpenLayers/Format/GeoRSS-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/GeoRSS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GeoRSS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GeoRSS"></a>OpenLayers.<wbr>Format.<wbr>GeoRSS</h1><div class=CBody><p>Read/write GeoRSS parser.  Create a new instance with the <a href="#OpenLayers.Format.GeoRSS.OpenLayers.Format.GeoRSS" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.GeoRSS</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GeoRSS"></a>OpenLayers.<wbr>Format.<wbr>GeoRSS</h1><div class=CBody><p>Read/write GeoRSS parser.  Create a new instance with the <a href="#OpenLayers.Format.GeoRSS.OpenLayers.Format.GeoRSS" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.GeoRSS</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.Properties"></a>Properties</h3></div></div>
 
@@ -35,9 +35,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a l [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a l [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Ac [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Ac [...]
 
 </div><!--Content-->
 
@@ -45,15 +45,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a list of features from a GeoRSS doc</div></div><div class=CToolTip id="tt2"><div cl [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a list of features from a GeoRSS doc</div></div><div class=CToolTip id="tt2"><div cl [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/JSON-js.html b/doc/apidocs/files/OpenLayers/Format/JSON-js.html
index 7aa34b4..73c7a5a 100644
--- a/doc/apidocs/files/OpenLayers/Format/JSON-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/JSON-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.JSON - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/KML-js.html b/doc/apidocs/files/OpenLayers/Format/KML-js.html
index a45220e..3324a16 100644
--- a/doc/apidocs/files/OpenLayers/Format/KML-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/KML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.KML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.KML"></a>OpenLayers.<wbr>Format.KML</h1><div class=CBody><p>Read/Write KML.  Create a new instance with the <a href="#OpenLayers.Format.KML.OpenLayers.Format.KML" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.KML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.KML"></a>OpenLayers.<wbr>Format.KML</h1><div class=CBody><p>Read/Write KML.  Create a new instance with the <a href="#OpenLayers.Format.KML.OpenLayers.Format.KML" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.KML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#Open [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.Properties"></a>Properties</h3></div></div>
 
@@ -29,7 +29,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.extractTracks"></a>extractTracks</h3><div class=CBody><p>{Boolean} Extract gx:Track elements from Placemark elements.   Default is false.   If true, features will be generated for all points in all gx:Track elements.   Features will have a when (Date) attribute based on when elements in the track.   If tracks include angle elements, features will have heading, tilt, and roll attri [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.trackAttributes"></a>trackAttributes</h3><div class=CBody><p>{Array} If <a href="#OpenLayers.Format.KML.extractTracks" class=LProperty id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">extractTracks</a> is true, points within gx:Track elements will be parsed as features with when, heading, tilt, and roll attributes.  Any additional attribute names can be provided  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.trackAttributes"></a>trackAttributes</h3><div class=CBody><p>{Array} If <a href="#OpenLayers.Format.KML.extractTracks" class=LProperty id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">extractTracks</a> is true, points within gx:Track elements will be parsed as features with when, heading, tilt, and roll attributes.  Any additional attribute names can be provided  [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.maxDepth"></a>maxDepth</h3><div class=CBody><p>{Integer} Maximum depth for recursive loading external KML URLs Defaults to 0: do no external fetching</p></div></div></div>
 
@@ -39,9 +39,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Accep [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Accep [...]
 
 </div><!--Content-->
 
@@ -49,15 +49,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty>{Boolean} Extract gx:Track elements from Placemark elements. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></tabl [...]
+<div class=CToolTip id="tt1"><div class=CProperty>{Boolean} Extract gx:Track elements from Placemark elements. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></tabl [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OGCExceptionReport-js.html b/doc/apidocs/files/OpenLayers/Format/OGCExceptionReport-js.html
index c212216..6c33880 100644
--- a/doc/apidocs/files/OpenLayers/Format/OGCExceptionReport-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OGCExceptionReport-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OGCExceptionReport - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OGCExceptionReport"></a>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport</h1><div class=CBody><p>Class to read exception reports for various OGC services and versions.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>S [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OGCExceptionReport"></a>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport</h1><div class=CBody><p>Class to read exception reports for various OGC services and versions.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></l [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OGCExceptionReport.Constructor"></a>Constructor</h3></div></div>
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read OGC exception report data from a string, and return an object with information about  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read OGC exception report data from a string, and return an object with information about  [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OSM-js.html b/doc/apidocs/files/OpenLayers/Format/OSM-js.html
index 3fe2714..8cbab2e 100644
--- a/doc/apidocs/files/OpenLayers/Format/OSM-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OSM-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OSM - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OSM"></a>OpenLayers.<wbr>Format.OSM</h1><div class=CBody><p>OSM parser.  Create a new instance with the <a href="#OpenLayers.Format.OSM.OpenLayers.Format.OSM" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.OSM</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js. [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OSM"></a>OpenLayers.<wbr>Format.OSM</h1><div class=CBody><p>OSM parser.  Create a new instance with the <a href="#OpenLayers.Format.OSM.OpenLayers.Format.OSM" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.OSM</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLaye [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.Properties"></a>Properties</h3></div></div>
 
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Takes [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Takes [...]
 
 </div><!--Content-->
 
@@ -33,15 +33,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Takes a list of features, returns a serialized OSM format file for use in tools like  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Takes a list of features, returns a serialized OSM format file for use in tools like  [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OWSCommon-js.html b/doc/apidocs/files/OpenLayers/Format/OWSCommon-js.html
index b0447d3..58c945f 100644
--- a/doc/apidocs/files/OpenLayers/Format/OWSCommon-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OWSCommon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1-js.html b/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1-js.html
index 85f2b73..c2c3f71 100644
--- a/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSCommon.v1"></a>OpenLayers.<wbr>Format.<wbr>OWSCommon.v1</h1><div class=CBody><p>Common readers and writers for OWSCommon v1.X formats</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul></div></div></div>
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSCommon.v1"></a>OpenLayers.<wbr>Format.<wbr>OWSCommon.v1</h1><div class=CBody><p>Common readers and writers for OWSCommon v1.X formats</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML</a></li></ul></div></div></div>
 
 </div><!--Content-->
 
@@ -19,15 +19,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html
index a0bf0f1..d8eca91 100644
--- a/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html
index c7193e1..1ecb368 100644
--- a/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OWSContext-js.html b/doc/apidocs/files/OpenLayers/Format/OWSContext-js.html
index f2b59f0..1a0b0bf 100644
--- a/doc/apidocs/files/OpenLayers/Format/OWSContext-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OWSContext-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSContext - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html b/doc/apidocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html
index 67d895f..9db4b24 100644
--- a/doc/apidocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSContext.v0_3_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDO [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h1><div class=CBody><p>Read and write OWSContext version 0.3.1.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=S [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h1><div class=CBody><p>Read and write OWSContext version 0.3.1.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMM [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.Constants"></a>Constants</h3></div></div>
 
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../OWSContext-js.html#OpenLayers.Format.OWSContext" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.OWSContext</a> constructor inst [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../OWSContext-js.html#OpenLayers.Format.OWSContext" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.OWSContext</a> constructor inst [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.Functions"></a>Functions</h3></div></div>
 
@@ -39,15 +39,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read OWS context data from a string or DOMElement, and return a list of layers.</div></div [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read OWS context data from a string or DOMElement, and return a list of layers.</div></div [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/QueryStringFilter-js.html b/doc/apidocs/files/OpenLayers/Format/QueryStringFilter-js.html
index 7bddb2e..cb176ae 100644
--- a/doc/apidocs/files/OpenLayers/Format/QueryStringFilter-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/QueryStringFilter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.QueryStringFilter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SLD-js.html b/doc/apidocs/files/OpenLayers/Format/SLD-js.html
index f42ffd3..5627c49 100644
--- a/doc/apidocs/files/OpenLayers/Format/SLD-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SLD-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SLD"></a>OpenLayers.<wbr>Format.SLD</h1><div class=CBody><p>Read/Wite SLD.  Create a new instance with the <a href="#OpenLayers.Format.SLD" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.SLD</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XM [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SLD"></a>OpenLayers.<wbr>Format.SLD</h1><div class=CBody><p>Read/Write SLD.  Create a new instance with the <a href="#OpenLayers.Format.SLD" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.SLD</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.X [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SLD.Properties"></a>Properties</h3></div></div>
 
@@ -35,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite SLD. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read/Write SLD. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SLD/v1-js.html b/doc/apidocs/files/OpenLayers/Format/SLD/v1-js.html
index 6df1acd..13538ce 100644
--- a/doc/apidocs/files/OpenLayers/Format/SLD/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SLD/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,15 +29,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Write ogc:Filter version 1.0.0.</div></div><div class=CToolTip id="tt2"><div class=CProperty>{Object} A symbolizer with the SLD defaults.</div></div><div class=CToolTip id="tt3"><div class=CClass>Read/Wite SLD. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Write ogc:Filter version 1.0.0.</div></div><div class=CToolTip id="tt2"><div class=CProperty>{Object} A symbolizer with the SLD defaults.</div></div><div class=CToolTip id="tt3"><div class=CClass>Read/Write SLD. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0-js.html
index f9835a9..ea3af8a 100644
--- a/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Superclass for SLD version 1 parsers.</div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Wite SLD. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Superclass for SLD version 1 parsers.</div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Write SLD. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html b/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html
index 88ab259..6547112 100644
--- a/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD/v1_0_0_GeoServer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SOSCapabilities-js.html b/doc/apidocs/files/OpenLayers/Format/SOSCapabilities-js.html
index a7e6aa8..bba300f 100644
--- a/doc/apidocs/files/OpenLayers/Format/SOSCapabilities-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SOSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html
index 764097c..167b478 100644
--- a/doc/apidocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSCapabilities.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html b/doc/apidocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html
index 82eabd5..17968ab 100644
--- a/doc/apidocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSGetFeatureOfInterest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest"></a>OpenLayers.<wbr>Format.<wbr>SOSGetFeatureOfInterest</h1><div class=CBody><p>Read and write SOS GetFeatureOfInterest.  This is used to get to the location of the features (stations).  The stations can have 1 or more sensors.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest"></a>OpenLayers.<wbr>Format.<wbr>SOSGetFeatureOfInterest</h1><div class=CBody><p>Read and write SOS GetFeatureOfInterest.  This is used to get to the location of the features (stations).  The stations can have 1 or more sensors.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMo [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.Constants"></a>Constants</h3></div></div>
 
@@ -23,7 +23,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
 </div><!--Content-->
 
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a GetFeatureOfInterest response and return an array of features</div></div><div clas [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a GetFeatureOfInterest response and return an array of features</div></div><div clas [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/SOSGetObservation-js.html b/doc/apidocs/files/OpenLayers/Format/SOSGetObservation-js.html
index 69cb5e1..51da51f 100644
--- a/doc/apidocs/files/OpenLayers/Format/SOSGetObservation-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/SOSGetObservation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSGetObservation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetObservation"></a>OpenLayers.<wbr>Format.<wbr>SOSGetObservation</h1><div class=CBody><p>Read and write SOS GetObersation (to get the actual values from a sensor) version 1.0.0</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetObservation"></a>OpenLayers.<wbr>Format.<wbr>SOSGetObservation</h1><div class=CBody><p>Read and write SOS GetObersation (to get the actual values from a sensor) version 1.0.0</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Fo [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetObservation.Constants"></a>Constants</h3></div></div>
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/Text-js.html b/doc/apidocs/files/OpenLayers/Format/Text-js.html
index a592414..82a78e1 100644
--- a/doc/apidocs/files/OpenLayers/Format/Text-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/Text-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Text - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WCSCapabilities-js.html b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities-js.html
new file mode 100644
index 0000000..d2aa404
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities-js.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities</h1><div class=CBody><p>Read WCS Capabilities.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML.VersionedOGC</a></li></ul><!--STAR [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.defaultVersion"></a>defaultVersion</h3><div class=CBody><p>{String} Version number to assume if none found.   Default is “1.1.0”.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.OpenLayers.Format.WCSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities</h3><div class=CBody><p>Create a new parser for WCS capabilities.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance.< [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.read"></a>read</h3><div class=CBody><p>Read capabilities data from a string, and return a list of coverages.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>data</td><td class=CDLDescription>{String} or {DOMElement} data to read/parse.</td></tr></table><h4 class=CHeading>Returns</h4><p>{Array} List of named cov [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1-js.html b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1-js.html
new file mode 100644
index 0000000..0f0b3c3
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1-js.html
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="ND [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_ [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([15, 16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of coverages.</div></div><div clas [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1_0_0-js.html
new file mode 100644
index 0000000..bc2023e
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1_0_0-js.html
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities/v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities/<wbr>v1_0_0</h1><div class=CBody><p>Read WCS Capabilities version 1.0.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="v1-js.html#OpenLayers.Format.WCSCapabilities.v1" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WCSCapabilities.v [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.OpenLayers.Format.WCSCapabilities.v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.<wbr>v1_0_0</h3><div class=CBody><p>Create a new parser for WCS capabilities version 1.0.0.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose p [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([15, 16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1_1_0-js.html
new file mode 100644
index 0000000..8e5d5dd
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Format/WCSCapabilities/v1_1_0-js.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities/v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities/<wbr>v1_1_0</h1><div class=CBody><p>Read WCS Capabilities version 1.1.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="v1-js.html#OpenLayers.Format.WCSCapabilities.v1" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WCSCapabilities.v [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.OpenLayers.Format.WCSCapabilities.v1_1_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.<wbr>v1_1_0</h3><div class=CBody><p>Create a new parser for WCS capabilities version 1.1.0.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose p [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([15, 16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Format/WCSGetCoverage-js.html b/doc/apidocs/files/OpenLayers/Format/WCSGetCoverage-js.html
index 700b072..a86249d 100644
--- a/doc/apidocs/files/OpenLayers/Format/WCSGetCoverage-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WCSGetCoverage-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSGetCoverage version 1.1.0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSGetCoverage_version_1.1.0"></a>OpenLayers.<wbr>Format.<wbr>WCSGetCoverage version 1.1.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacin [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSGetCoverage_version_1.1.0"></a>OpenLayers.<wbr>Format.<wbr>WCSGetCoverage version 1.1.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div cla [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSGetCoverage_version_1.1.0.Constants"></a>Constants</h3></div></div>
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFS-js.html b/doc/apidocs/files/OpenLayers/Format/WFS-js.html
index 924c2a2..6e7db78 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFS-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Remove ciruclar ref to layer</div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Wite GML. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Remove ciruclar ref to layer</div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Write GML. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities-js.html b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities-js.html
index ec3dd19..07329af 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,14 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities</h1><div class=CBody><p>Read WFS Capabilities.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML.VersionedOGC</a></li></ul><!--STAR [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities</h1><div class=CBody><p>Read WFS Capabilities.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML.VersionedOGC</a></li></ul><!--STAR [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.defaultVersion"></a>defaultVersion</h3><div class=CBody><p>{String} Version number to assume if none found.   Default is “1.1.0”.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
-
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.OpenLayers.Format.WFSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities</h3><div class=CBody><p>Create a new parser for WFS capabilities.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance.< [...]
@@ -33,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html
index 601ce72..fb6ec60 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="ND [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div cla [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_ [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.Constructor"></a>Constructor</h3></div></div>
 
@@ -27,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><!--END_ND_T [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><div class=C [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html
index 725214f..ecc139f 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities/v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html
index f0f3416..6b77011 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities/v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html b/doc/apidocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html
index f8acdfa..386a2b5 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSDescribeFeatureType - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType"></a>OpenLayers.<wbr>Format.<wbr>WFSDescribeFeatureType</h1><div class=CBody><p>Read WFS DescribeFeatureType response</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SB [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType"></a>OpenLayers.<wbr>Format.<wbr>WFSDescribeFeatureType</h1><div class=CBody><p>Read WFS DescribeFeatureType response</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMA [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType.Constructor"></a>Constructor</h3></div></div>
 
@@ -23,15 +23,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFST-js.html b/doc/apidocs/files/OpenLayers/Format/WFST-js.html
index 5d7d841..28af8c2 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFST-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFST-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.DEFAULTS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFST/v1-js.html b/doc/apidocs/files/OpenLayers/Format/WFST/v1-js.html
index b679171..bd9f32a 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFST/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFST/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h1><div class=CBody><p>Superclass for WFST parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h1><div class=CBody><p>Superclass for WFST parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=S [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.Properties"></a>Properties</h3></div></div>
 
@@ -23,7 +23,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v1_0_0-js.html#OpenLayers.Format.WFST.v1_0_0" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.WFST.v1_0_0</a> or <a href="v1_1_0-js.html#OpenLayers.Format.WFST.v1_1_0 [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v1_0_0-js.html#OpenLayers.Format.WFST.v1_0_0" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.WFST.v1_0_0</a> or <a href="v1_1_0-js.html#OpenLayers.Format.WFST.v1_1_0 [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.Functions"></a>Functions</h3></div></div>
 
@@ -35,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the respo [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the respo [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFST/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/WFST/v1_0_0-js.html
index 99bd4dc..5405125 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFST/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFST/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WFST/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/WFST/v1_1_0-js.html
index 3702b3b..e14423a 100644
--- a/doc/apidocs/files/OpenLayers/Format/WFST/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WFST/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WKT-js.html b/doc/apidocs/files/OpenLayers/Format/WKT-js.html
index c47e2ba..296c8a0 100644
--- a/doc/apidocs/files/OpenLayers/Format/WKT-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WKT-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WKT - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WKT"></a>OpenLayers.<wbr>Format.WKT</h1><div class=CBody><p>Class for reading and writing Well-Known Text.   Create a new instance with the <a href="#OpenLayers.Format.WKT.OpenLayers.Format.WKT" class=LConstructor id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WKT</a> constructor.</p><h4 class=CHeading>Inherits from</h4>< [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WKT"></a>OpenLayers.<wbr>Format.WKT</h1><div class=CBody><p>Class for reading and writing Well-Known Text.   Create a new instance with the <a href="#OpenLayers.Format.WKT.OpenLayers.Format.WKT" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.WKT</a> constructor.</p><h4 class=CHeading>Inherits from</h4>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WKT.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WKT.OpenLayers.Format.WKT"></a>OpenLayers.<wbr>Format.WKT</h3><div class=CBody><p>Create a new parser for WKT</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a h [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WKT.OpenLayers.Format.WKT"></a>OpenLayers.<wbr>Format.WKT</h3><div class=CBody><p>Create a new parser for WKT</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a h [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WKT.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WKT.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>wkt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Deserialize a [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WKT.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Seria [...]
 
 </div><!--Content-->
 
@@ -23,15 +29,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CConstructor>Create a new parser for WKT</div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for format reading/writing a variety of formats. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>wkt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Deserialize a WKT string and return a vector feature or an array of vector features. </div> [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMC-js.html b/doc/apidocs/files/OpenLayers/Format/WMC-js.html
index f63536d..f2ef938 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMC-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMC-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMC/v1-js.html b/doc/apidocs/files/OpenLayers/Format/WMC/v1-js.html
index cab4169..ae1f48f 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMC/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMC/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h1><div class=CBody><p>Superclass for WMC version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspa [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h1><div class=CBody><p>Superclass for WMC version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../WMC-js.html#OpenLayers.Format.WMC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WMC</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border=0 c [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../WMC-js.html#OpenLayers.Format.WMC" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.WMC</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border=0 c [...]
 
 </div><!--Content-->
 
@@ -23,15 +23,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read and write Web Map Context documents.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><div class=CToolTip id="tt2"><div class=CClass>Read and write Web Map Context documents.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMC/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/WMC/v1_0_0-js.html
index bc7eaf6..50a75c5 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMC/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMC/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMC/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/WMC/v1_1_0-js.html
index 13881ba..3f263fa 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMC/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMC/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities-js.html
index 23ba7f4..da5c9c4 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html
index 200daa9..e8b72a9 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="ND [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.  Creates the common parts for both WMS 1.1.X and WMS 1.3.X.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUM [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.  Creates the common parts for both WMS 1.1.X and WMS 1.3.X.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSCapabilities.v1.Constructor"></a>Constructor</h3></div></div>
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><!--END_ND_T [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><div class=C [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html
index 56b583f..ce318b8 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities.v1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html
index 0b8cf24..295fe41 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html
index eaabc1e..79c52c0 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities/v1_1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities/<wbr>v1_1_1</h1><div class=CBody><p>Read WMS Capabilities version 1.1.1.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="v1_1-js.html#OpenLayers.Format.WMSCapabilities.v1_1" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WMSCapabiliti [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities/v1_1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities/<wbr>v1_1_1</h1><div class=CBody><p>Read WMS Capabilities version 1.1.1.</p><p>Note on <ScaleHint> parsing: If the ‘min’ attribute is set to “0”, no maxScale will be set on the layer object.  If the ‘max’ attribute is set to “Infinity”, no minScale w [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSCapabilities/v1_1_1.Constructor"></a>Constructor</h3></div></div>
 
@@ -23,15 +23,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt2"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html
index a7cd145..ad0009a 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_1_1_WMSC - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" o [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html
index f71585d..81ba69a 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_3 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html
index 00cfce9..8a3a36e 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_3_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer-js.html b/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer-js.html
index 68cb0d3..fc5d896 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSDescribeLayer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([14, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([14, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html b/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html
index f4d1fc8..14f4c95 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSDescribeLayer.v1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad= [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSDescribeLayer.v1_1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,15 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer.v1_1</h1><div class=CBody><p>Read SLD WMS DescribeLayer response for WMS 1.1.X WMS 1.1.X is tightly coupled to SLD 1.0.0</p><h4 class=CHeading>Example DescribeLayer request</h4><p><a href="http://demo.opengeo.org/geoserver/wms?request=DescribeLayer&version=1.1.1&layers=topp:states" class=LURL target= [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer.<wbr>v1_1_1</h1><div class=CBody><p>Read SLD WMS DescribeLayer response for WMS 1.1.X WMS 1.1.X is tightly coupled to SLD 1.0.0</p><h4 class=CHeading>Example DescribeLayer request</h4><p><a href="http://demo.opengeo.org/geoserver/wms?request=DescribeLayer&version=1.1.1&layers=topp:states" class=LUR [...]
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.Constructor"></a>Constructor</h3></div></div>
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h3><div class=CBody><p>Create a new parser for WMS DescribeLayer responses.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h3><div class=CBody><p>Create a new parser for WMS DescribeLayer responses.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be s [...]
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.Functions"></a>Functions</h3></div></div>
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
 </div><!--Content-->
 
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([14, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([14, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html b/doc/apidocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html
index f710bf8..0e37a7e 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSGetFeatureInfo - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo"></a>OpenLayers.<wbr>Format.<wbr>WMSGetFeatureInfo</h1><div class=CBody><p>Class to read GetFeatureInfo responses from Web Mapping Services</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</ [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo"></a>OpenLayers.<wbr>Format.<wbr>WMSGetFeatureInfo</h1><div class=CBody><p>Class to read GetFeatureInfo responses from Web Mapping Services</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.Properties"></a>Properties</h3></div></div>
 
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
 </div><!--Content-->
 
@@ -33,15 +33,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read WMS GetFeatureInfo data from a string, and return an array of features</div></div><di [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read WMS GetFeatureInfo data from a string, and return an array of features</div></div><di [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities-js.html b/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities-js.html
index 6636d6a..e9b84d5 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMTSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,7 +27,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMTSCapabilities.read"></a>read</h3><div class=CBody><p>Read capabilities data from a string, and return information about the service (offering and observedProperty mostly).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>data</td><td class=CDLDescription>{String} or {DOMElement} data to read/parse.</td></tr></table><h4 class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMTSCapabilities.createLayer"></a>createLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createLayer: function(</td><td class="PParameter  prettyprint " nowrap>capabilities,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>config</t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMTSCapabilities.createLayer"></a>createLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createLayer: function(</td><td class="PParameter  prettyprint " nowrap>capabilities,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>config</t [...]
 
 </div><!--Content-->
 
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html
index ab11c9c..75bc1a9 100644
--- a/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMTSCapabilities.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WPSCapabilities-js.html b/doc/apidocs/files/OpenLayers/Format/WPSCapabilities-js.html
index 05219d4..25f7d5d 100644
--- a/doc/apidocs/files/OpenLayers/Format/WPSCapabilities-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WPSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html
index 35b1d34..b33c6b0 100644
--- a/doc/apidocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSCapabilities.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSCapabilities.v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WPSCapabilities.<wbr>v1_0_0</h1><div class=CBody><p>Read WPS Capabilities version 1.0.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div c [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSCapabilities.v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WPSCapabilities.<wbr>v1_0_0</h1><div class=CBody><p>Read WPS Capabilities version 1.0.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_N [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSCapabilities.v1_0_0.Constructor"></a>Constructor</h3></div></div>
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return info about the WPS.</div></div><!--END_ND [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return info about the WPS.</div></div><div class [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WPSDescribeProcess-js.html b/doc/apidocs/files/OpenLayers/Format/WPSDescribeProcess-js.html
index 0ceb13f..c50c7e1 100644
--- a/doc/apidocs/files/OpenLayers/Format/WPSDescribeProcess-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WPSDescribeProcess-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSDescribeProcess - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSDescribeProcess"></a>OpenLayers.<wbr>Format.<wbr>WPSDescribeProcess</h1><div class=CBody><p>Read WPS DescribeProcess responses.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><tab [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSDescribeProcess"></a>OpenLayers.<wbr>Format.<wbr>WPSDescribeProcess</h1><div class=CBody><p>Read WPS DescribeProcess responses.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSDescribeProcess.Constants"></a>Constants</h3></div></div>
 
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a WPS DescribeProcess and return an object with its information.</div></div><!--END_ [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a WPS DescribeProcess and return an object with its information.</div></div><div cla [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/WPSExecute-js.html b/doc/apidocs/files/OpenLayers/Format/WPSExecute-js.html
index 0c27549..5e878d2 100644
--- a/doc/apidocs/files/OpenLayers/Format/WPSExecute-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/WPSExecute-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSExecute version 1.0.0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0"></a>OpenLayers.<wbr>Format.<wbr>WPSExecute version 1.0.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cell [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0"></a>OpenLayers.<wbr>Format.<wbr>WPSExecute version 1.0.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitl [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.Constants"></a>Constants</h3></div></div>
 
@@ -21,21 +21,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.OpenLayers.Format.WPSExecute"></a>OpenLayers.<wbr>Format.<wbr>WPSExecute</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance.</td></tr></table></div></div></div>
 
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a WPS Execute and return an object with its information.</div></div><div class=CTool [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/XLS-js.html b/doc/apidocs/files/OpenLayers/Format/XLS-js.html
index 2334a71..311a2c9 100644
--- a/doc/apidocs/files/OpenLayers/Format/XLS-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/XLS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XLS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS"></a>OpenLayers.<wbr>Format.XLS</h1><div class=CBody><p>Read/Wite XLS (OpenLS).  Create a new instance with the <a href="#OpenLayers.Format.XLS.OpenLayers.Format.XLS" class=LConstructor id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XLS</a> constructor.  Currently only implemented for Location Utility Services, m [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS"></a>OpenLayers.<wbr>Format.XLS</h1><div class=CBody><p>Read/Write XLS (OpenLS).  Create a new instance with the <a href="#OpenLayers.Format.XLS.OpenLayers.Format.XLS" class=LConstructor id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XLS</a> constructor.  Currently only implemented for Location Utility Services,  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.Properties"></a>Properties</h3></div></div>
 
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/XLS/v1-js.html b/doc/apidocs/files/OpenLayers/Format/XLS/v1-js.html
index e09785e..4307e99 100644
--- a/doc/apidocs/files/OpenLayers/Format/XLS/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/XLS/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XLS.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h1><div class=CBody><p>Superclass for XLS version 1 parsers.  Only supports GeocodeRequest for now.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</di [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h1><div class=CBody><p>Superclass for XLS version 1 parsers.  Only supports GeocodeRequest for now.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML</a></li></ul><!- [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.Properties"></a>Properties</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../XLS-js.html#OpenLayers.Format.XLS" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XLS</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border=0 c [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../XLS-js.html#OpenLayers.Format.XLS" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XLS</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border=0 c [...]
 
 </div><!--Content-->
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite XLS (OpenLS). </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read and write XML. </div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Write XLS (OpenLS). </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/XLS/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Format/XLS/v1_1_0-js.html
index 10d0fe1..d33703e 100644
--- a/doc/apidocs/files/OpenLayers/Format/XLS/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/XLS/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XLS.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Superclass for XLS version 1 parsers. </div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Wite XLS (OpenLS). </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Superclass for XLS version 1 parsers. </div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Write XLS (OpenLS). </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/XML-js.html b/doc/apidocs/files/OpenLayers/Format/XML-js.html
index 2738bfe..518187e 100644
--- a/doc/apidocs/files/OpenLayers/Format/XML-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/XML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h1><div class=CBody><p>Read and write XML.   For cross-browser XML generation, use methods on an instance of the XML format class instead of on <code>document<end>.  The DOM creation and traversing methods exposed here all mimic the W3C XML DOM methods.   Create a new parser with the <a href="#OpenLayers.Format.XML. [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h1><div class=CBody><p>Read and write XML.   For cross-browser XML generation, use methods on an instance of the XML format class instead of on <code>document<end>.  The DOM creation and traversing methods exposed here all mimic the W3C XML DOM methods.   Create a new parser with the <a href="#OpenLayers.Format.XML. [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.Constructor"></a>Constructor</h3></div></div>
 
@@ -25,6 +25,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createElementNS"></a>createElementNS</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createElementNS: function(</td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class= [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createDocumentFragment"></a>createDocumentFragment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createDocumentFragment: function()</td></tr></table></blockquote><p>Create a document fragment node that can be appended to another node created by createElementNS.   This will call document.createDocumentFragment outside of [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createTextNode"></a>createTextNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createTextNode: function(</td><td class="PParameter  prettyprint " nowrap>text</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.getElementsByTagNameNS"></a>getElementsByTagNameNS</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getElementsByTagNameNS: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowr [...]
@@ -57,15 +59,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParame [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParame [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Format/XML/VersionedOGC-js.html b/doc/apidocs/files/OpenLayers/Format/XML/VersionedOGC-js.html
index a298dfd..746df99 100644
--- a/doc/apidocs/files/OpenLayers/Format/XML/VersionedOGC-js.html
+++ b/doc/apidocs/files/OpenLayers/Format/XML/VersionedOGC-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XML.VersionedOGC - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC"></a>OpenLayers.<wbr>Format.<wbr>XML.<wbr>VersionedOGC</h1><div class=CBody><p>Base class for versioned formats, i.e. a format which supports multiple versions.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC"></a>OpenLayers.<wbr>Format.<wbr>XML.<wbr>VersionedOGC</h1><div class=CBody><p>Base class for versioned formats, i.e. a format which supports multiple versions.</p><p>To enable checking if parsing succeeded, you will need to define a property called errorProperty on the parser you want to check.  The parser will then check the returned object to see if that [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.Properties"></a>Properties</h3></div></div>
 
@@ -21,7 +21,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.profile"></a>profile</h3><div class=CBody><p>{String} If provided, use a custom profile.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.allowFallback"></a>allowFallback</h3><div class=CBody><p>{Boolean} If a profiled parser cannot be found for the returned version, use a non-profiled parser as the fallback.  Application code using this should take into account that the return object structure might be missing the specifics of the profile.  Defaults to false.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.stringifyOutput"></a>stringifyOutput</h3><div class=CBody><p>{Boolean} If true, write will return a string otherwise a DOMElement.  Default is false.</p></div></div></div>
 
@@ -41,15 +41,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Write a documen [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Write a documen [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry-js.html b/doc/apidocs/files/OpenLayers/Geometry-js.html
index dca82ae..9c94d5f 100644
--- a/doc/apidocs/files/OpenLayers/Geometry-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/Collection-js.html b/doc/apidocs/files/OpenLayers/Geometry/Collection-js.html
index 9a4b04b..60c2b5b 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/Collection-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/Collection-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Collection - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -65,10 +65,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/Curve-js.html b/doc/apidocs/files/OpenLayers/Geometry/Curve-js.html
index a10fd9f..0ee7476 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/Curve-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/Curve-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Curve - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/LineString-js.html b/doc/apidocs/files/OpenLayers/Geometry/LineString-js.html
index 86748a0..9577a85 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/LineString-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/LineString-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.LineString - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/LinearRing-js.html b/doc/apidocs/files/OpenLayers/Geometry/LinearRing-js.html
index 51e3b99..1370c59 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/LinearRing-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/LinearRing-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.LinearRing - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/MultiLineString-js.html b/doc/apidocs/files/OpenLayers/Geometry/MultiLineString-js.html
index 0b00861..59a166c 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/MultiLineString-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/MultiLineString-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.MultiLineString - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/MultiPoint-js.html b/doc/apidocs/files/OpenLayers/Geometry/MultiPoint-js.html
index c6a8e10..e7deefd 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/MultiPoint-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/MultiPoint-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.MultiPoint - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/MultiPolygon-js.html b/doc/apidocs/files/OpenLayers/Geometry/MultiPolygon-js.html
index 572dcb5..d6b2d7f 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/MultiPolygon-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/MultiPolygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.MultiPolygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/Point-js.html b/doc/apidocs/files/OpenLayers/Geometry/Point-js.html
index 35aaba2..08aa59e 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/Point-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/Point-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Point - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Geometry/Polygon-js.html b/doc/apidocs/files/OpenLayers/Geometry/Polygon-js.html
index 4953611..23a0bbf 100644
--- a/doc/apidocs/files/OpenLayers/Geometry/Polygon-js.html
+++ b/doc/apidocs/files/OpenLayers/Geometry/Polygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Polygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler-js.html b/doc/apidocs/files/OpenLayers/Handler-js.html
index 036f978..46f04e2 100644
--- a/doc/apidocs/files/OpenLayers/Handler-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h1><div class=CBody><p>Base class to construct a higher-level handler for event sequences.   All handlers have activate and deactivate methods.   In addition, they have methods named like browser events.   When a handler is activated, any additional methods named like a browser event is registered as a listener for the corresponding  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h1><div class=CBody><p>Base class to construct a higher-level handler for event sequences.   All handlers have activate and deactivate methods.   In addition, they have methods named like browser events.   When a handler is activated, any additional methods named like a browser event is registered as a listener for the corresponding  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.control"></a>control</h3><div class=CBody><p>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt1', 'link8')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a>}.  The control that initialized this handler.   The control is assumed to have a valid map property - that map is used in the handler’s own setMap method.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.control"></a>control</h3><div class=CBody><p>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt1', 'link9')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a>}.  The control that initialized this handler.   The control is assumed to have a valid map property - that map is used in the handler’s own setMap method.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.keyMask"></a>keyMask</h3><div class=CBody><p>{Integer} Use bitwise operators and one or more of the OpenLayers.Handler constants to construct a keyMask.   The keyMask is used by <checkModifiers>.   If the keyMask matches the combination of keys down on an event, checkModifiers returns true.</p><h4 class=CHeading>Example</h4><blockquote><pre class="prettyprint">// handler only responds if [...]
 handler.keyMask = OpenLayers.Handler.MOD_SHIFT;
@@ -26,7 +26,7 @@ handler.keyMask = OpenLayers.Handler.MOD_SHIFT |
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h3><div class=CBody><p>Construct a handler.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt1', 'link9')" onMouseOut="HideTip('tt1')">OpenL [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h3><div class=CBody><p>Construct a handler.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">Ope [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Functions"></a>Functions</h3></div></div>
 
@@ -36,13 +36,15 @@ handler.keyMask = OpenLayers.Handler.MOD_SHIFT |
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_NONE"></a>OpenLayers.<wbr>Handler.<wbr>MOD_NONE</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link10 onMouseOver="ShowTip(event, 'tt4', 'link10')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if any key is down.</p></div></div></div>
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_NONE"></a>OpenLayers.<wbr>Handler.<wbr>MOD_NONE</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link11 onMouseOver="ShowTip(event, 'tt4', 'link11')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if any key is down.</p></div></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_SHIFT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_SHIFT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link11 onMouseOver="ShowTip(event, 'tt4', 'link11')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Shift is down.</p></div></div></div>
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_SHIFT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_SHIFT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link12 onMouseOver="ShowTip(event, 'tt4', 'link12')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Shift is down.</p></div></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_CTRL"></a>OpenLayers.<wbr>Handler.<wbr>MOD_CTRL</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link12 onMouseOver="ShowTip(event, 'tt4', 'link12')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Ctrl is down.</p></div></div></div>
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_CTRL"></a>OpenLayers.<wbr>Handler.<wbr>MOD_CTRL</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt4', 'link13')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Ctrl is down.</p></div></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_ALT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_ALT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt4', 'link13')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Alt is down.</p></div></div></div>
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_ALT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_ALT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link14 onMouseOver="ShowTip(event, 'tt4', 'link14')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Alt is down.</p></div></div></div>
+
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_META"></a>OpenLayers.<wbr>Handler.<wbr>MOD_META</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link15 onMouseOver="ShowTip(event, 'tt4', 'link15')" onMouseOut="HideTip('tt4')">keyMask</a>, <checkModifiers> returns false if Cmd is down.</p></div></div></div>
 
 </div><!--Content-->
 
@@ -50,10 +52,10 @@ handler.keyMask = OpenLayers.Handler.MOD_SHIFT |
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Box-js.html b/doc/apidocs/files/OpenLayers/Handler/Box-js.html
index 1c66769..f5c9437 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Box-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Box-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Box - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Click-js.html b/doc/apidocs/files/OpenLayers/Handler/Click-js.html
index 9166c65..6891fe7 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Click-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Click-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Click - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Drag-js.html b/doc/apidocs/files/OpenLayers/Handler/Drag-js.html
index 3c91ec5..1af332e 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Drag-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Drag-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Drag - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Feature-js.html b/doc/apidocs/files/OpenLayers/Handler/Feature-js.html
index 49bced1..7398e99 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Feature-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Feature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Feature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Hover-js.html b/doc/apidocs/files/OpenLayers/Handler/Hover-js.html
index 4f1e5d1..927bd1e 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Hover-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Hover-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Hover - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Keyboard-js.html b/doc/apidocs/files/OpenLayers/Handler/Keyboard-js.html
index 89cde64..e4a118d 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Keyboard-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Keyboard-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.handler.Keyboard - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/MouseWheel-js.html b/doc/apidocs/files/OpenLayers/Handler/MouseWheel-js.html
index 2ed8f89..0543cf1 100644
--- a/doc/apidocs/files/OpenLayers/Handler/MouseWheel-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/MouseWheel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.MouseWheel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Path-js.html b/doc/apidocs/files/OpenLayers/Handler/Path-js.html
index fc9eeda..7928158 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Path-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Path-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Path - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Pinch-js.html b/doc/apidocs/files/OpenLayers/Handler/Pinch-js.html
index e963ba1..e63a90d 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Pinch-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Pinch-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Pinch - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Point-js.html b/doc/apidocs/files/OpenLayers/Handler/Point-js.html
index dfde29c..6ff8311 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Point-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Point-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Point - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/Polygon-js.html b/doc/apidocs/files/OpenLayers/Handler/Polygon-js.html
index ce6717d..ed40b7e 100644
--- a/doc/apidocs/files/OpenLayers/Handler/Polygon-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/Polygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Polygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Handler/RegularPolygon-js.html b/doc/apidocs/files/OpenLayers/Handler/RegularPolygon-js.html
index 3e8c4da..8a94403 100644
--- a/doc/apidocs/files/OpenLayers/Handler/RegularPolygon-js.html
+++ b/doc/apidocs/files/OpenLayers/Handler/RegularPolygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.RegularPolygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Icon-js.html b/doc/apidocs/files/OpenLayers/Icon-js.html
index 5b1dd8c..c82ac8e 100644
--- a/doc/apidocs/files/OpenLayers/Icon-js.html
+++ b/doc/apidocs/files/OpenLayers/Icon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Icon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Kinetic-js.html b/doc/apidocs/files/OpenLayers/Kinetic-js.html
index 368c8d8..8205a63 100644
--- a/doc/apidocs/files/OpenLayers/Kinetic-js.html
+++ b/doc/apidocs/files/OpenLayers/Kinetic-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Kinetic - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang-js.html b/doc/apidocs/files/OpenLayers/Lang-js.html
index 0d537ff..f0c03b2 100644
--- a/doc/apidocs/files/OpenLayers/Lang-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/ar-js.html b/doc/apidocs/files/OpenLayers/Lang/ar-js.html
index a13578f..dbd0065 100644
--- a/doc/apidocs/files/OpenLayers/Lang/ar-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/ar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ar”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ar]"></a>OpenLayers.<wbr>Lang[“ar”]</h1><div class=CBody><p>Dictionary for العربية.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted f [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ar]"></a>OpenLayers.<wbr>Lang[“ar”]</h1><div class=CBody><p>Dictionary for العربية.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/be-tarask-js.html b/doc/apidocs/files/OpenLayers/Lang/be-tarask-js.html
index 6f07f58..152940c 100644
--- a/doc/apidocs/files/OpenLayers/Lang/be-tarask-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/be-tarask-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“be-tarask”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[be-tarask]"></a>OpenLayers.<wbr>Lang[“be-tarask”]</h1><div class=CBody><p>Dictionary for Беларуская (тарашкевіца).   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[be-tarask]"></a>OpenLayers.<wbr>Lang[“be-tarask”]</h1><div class=CBody><p>Dictionary for Беларуская (тарашкевіца).   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   En [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/bg-js.html b/doc/apidocs/files/OpenLayers/Lang/bg-js.html
index 4f865f6..7bad14b 100644
--- a/doc/apidocs/files/OpenLayers/Lang/bg-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/bg-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“bg”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[bg]"></a>OpenLayers.<wbr>Lang[“bg”]</h1><div class=CBody><p>Dictionary for Български.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[bg]"></a>OpenLayers.<wbr>Lang[“bg”]</h1><div class=CBody><p>Dictionary for Български.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings  [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/br-js.html b/doc/apidocs/files/OpenLayers/Lang/br-js.html
index aa390ce..9c14eb7 100644
--- a/doc/apidocs/files/OpenLayers/Lang/br-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/br-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“br”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/ca-js.html b/doc/apidocs/files/OpenLayers/Lang/ca-js.html
index 60fc0fb..69ea2e4 100644
--- a/doc/apidocs/files/OpenLayers/Lang/ca-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/ca-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ca”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/cs-CZ-js.html b/doc/apidocs/files/OpenLayers/Lang/cs-CZ-js.html
index 7c45c81..4f06146 100644
--- a/doc/apidocs/files/OpenLayers/Lang/cs-CZ-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/cs-CZ-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“cs-CZ”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[cs-CZ]"></a>OpenLayers.<wbr>Lang[“cs-CZ”]</h1><div class=CBody><p>Dictionary for Česky.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatt [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[cs-CZ]"></a>OpenLayers.<wbr>Lang[“cs-CZ”]</h1><div class=CBody><p>Dictionary for ÄŒesky.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings format [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/da-DK-js.html b/doc/apidocs/files/OpenLayers/Lang/da-DK-js.html
index 5895ae6..5dd55a9 100644
--- a/doc/apidocs/files/OpenLayers/Lang/da-DK-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/da-DK-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“da-DK”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/de-js.html b/doc/apidocs/files/OpenLayers/Lang/de-js.html
index 7a68401..60dbbc5 100644
--- a/doc/apidocs/files/OpenLayers/Lang/de-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/de-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“de”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/el-js.html b/doc/apidocs/files/OpenLayers/Lang/el-js.html
index 16b8059..6955154 100644
--- a/doc/apidocs/files/OpenLayers/Lang/el-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/el-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“el”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[el]"></a>OpenLayers.<wbr>Lang[“el”]</h1><div class=CBody><p>Dictionary for Ελληνικά.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[el]"></a>OpenLayers.<wbr>Lang[“el”]</h1><div class=CBody><p>Dictionary for Ελληνικά.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings fo [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/en-CA-js.html b/doc/apidocs/files/OpenLayers/Lang/en-CA-js.html
index 118bbf5..da05199 100644
--- a/doc/apidocs/files/OpenLayers/Lang/en-CA-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/en-CA-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“en-CA”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/en-js.html b/doc/apidocs/files/OpenLayers/Lang/en-js.html
index a1c4080..3103796 100644
--- a/doc/apidocs/files/OpenLayers/Lang/en-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/en-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“en”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/es-js.html b/doc/apidocs/files/OpenLayers/Lang/es-js.html
index 1efb1d4..6ff301e 100644
--- a/doc/apidocs/files/OpenLayers/Lang/es-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/es-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“es”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/fi-js.html b/doc/apidocs/files/OpenLayers/Lang/fi-js.html
index 985f13e..a8cbdfb 100644
--- a/doc/apidocs/files/OpenLayers/Lang/fi-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/fi-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“fi”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/fr-js.html b/doc/apidocs/files/OpenLayers/Lang/fr-js.html
index fbaaf52..632a1b5 100644
--- a/doc/apidocs/files/OpenLayers/Lang/fr-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/fr-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“fr”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[fr]"></a>OpenLayers.<wbr>Lang[“fr”]</h1><div class=CBody><p>Dictionary for Français.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[fr]"></a>OpenLayers.<wbr>Lang[“fr”]</h1><div class=CBody><p>Dictionary for Français.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/fur-js.html b/doc/apidocs/files/OpenLayers/Lang/fur-js.html
index 3db16aa..284419f 100644
--- a/doc/apidocs/files/OpenLayers/Lang/fur-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/fur-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“fur”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/gl-js.html b/doc/apidocs/files/OpenLayers/Lang/gl-js.html
index a58fca1..3f8c06b 100644
--- a/doc/apidocs/files/OpenLayers/Lang/gl-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/gl-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“gl”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/gsw-js.html b/doc/apidocs/files/OpenLayers/Lang/gsw-js.html
index 99370ea..aa88fe7 100644
--- a/doc/apidocs/files/OpenLayers/Lang/gsw-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/gsw-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“gsw”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/hr-js.html b/doc/apidocs/files/OpenLayers/Lang/hr-js.html
index 8ad88f4..fbf8b65 100644
--- a/doc/apidocs/files/OpenLayers/Lang/hr-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/hr-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“hr”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/hsb-js.html b/doc/apidocs/files/OpenLayers/Lang/hsb-js.html
index fc1e3f3..08569c1 100644
--- a/doc/apidocs/files/OpenLayers/Lang/hsb-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/hsb-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“hsb”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/hu-js.html b/doc/apidocs/files/OpenLayers/Lang/hu-js.html
index 3e6f143..fd00c26 100644
--- a/doc/apidocs/files/OpenLayers/Lang/hu-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/hu-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“hu”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/ia-js.html b/doc/apidocs/files/OpenLayers/Lang/ia-js.html
index 370d147..ce14486 100644
--- a/doc/apidocs/files/OpenLayers/Lang/ia-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/ia-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ia”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/id-js.html b/doc/apidocs/files/OpenLayers/Lang/id-js.html
index d5637ca..1050892 100644
--- a/doc/apidocs/files/OpenLayers/Lang/id-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/id-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“id”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/io-js.html b/doc/apidocs/files/OpenLayers/Lang/io-js.html
index 79102e6..0bd3246 100644
--- a/doc/apidocs/files/OpenLayers/Lang/io-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/io-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“io”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/is-js.html b/doc/apidocs/files/OpenLayers/Lang/is-js.html
index 88afb23..dec7129 100644
--- a/doc/apidocs/files/OpenLayers/Lang/is-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/is-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“is”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[is]"></a>OpenLayers.<wbr>Lang[“is”]</h1><div class=CBody><p>Dictionary for Íslenska.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[is]"></a>OpenLayers.<wbr>Lang[“is”]</h1><div class=CBody><p>Dictionary for Íslenska.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/it-js.html b/doc/apidocs/files/OpenLayers/Lang/it-js.html
index ff49bab..206318b 100644
--- a/doc/apidocs/files/OpenLayers/Lang/it-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/it-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“it”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/ja-js.html b/doc/apidocs/files/OpenLayers/Lang/ja-js.html
index 480e5b8..afd767b 100644
--- a/doc/apidocs/files/OpenLayers/Lang/ja-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/ja-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ja”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ja]"></a>OpenLayers.<wbr>Lang[“ja”]</h1><div class=CBody><p>Dictionary for 日本語.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted for u [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ja]"></a>OpenLayers.<wbr>Lang[“ja”]</h1><div class=CBody><p>Dictionary for 日本語.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/km-js.html b/doc/apidocs/files/OpenLayers/Lang/km-js.html
index 1efefd7..0140e36 100644
--- a/doc/apidocs/files/OpenLayers/Lang/km-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/km-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“km”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[km]"></a>OpenLayers.<wbr>Lang[“km”]</h1><div class=CBody><p>Dictionary for ភាសាខ្មែរ.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[km]"></a>OpenLayers.<wbr>Lang[“km”]</h1><div class=CBody><p>Dictionary for ភាសាខ្មែរ.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/ksh-js.html b/doc/apidocs/files/OpenLayers/Lang/ksh-js.html
index b8a8e08..09259f8 100644
--- a/doc/apidocs/files/OpenLayers/Lang/ksh-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/ksh-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ksh”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/lt-js.html b/doc/apidocs/files/OpenLayers/Lang/lt-js.html
index eb6137d..ea6ba73 100644
--- a/doc/apidocs/files/OpenLayers/Lang/lt-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/lt-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“lt”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/nb-js.html b/doc/apidocs/files/OpenLayers/Lang/nb-js.html
index 1545356..398cf15 100644
--- a/doc/apidocs/files/OpenLayers/Lang/nb-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/nb-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nb”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nb]"></a>OpenLayers.<wbr>Lang[“nb”]</h1><div class=CBody><p>Dictionary for norwegian bokmål (Norway).  Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or st [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nb]"></a>OpenLayers.<wbr>Lang[“nb”]</h1><div class=CBody><p>Dictionary for norwegian bokmÃ¥l (Norway).  Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or s [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/nds-js.html b/doc/apidocs/files/OpenLayers/Lang/nds-js.html
index 6967c96..43924f8 100644
--- a/doc/apidocs/files/OpenLayers/Lang/nds-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/nds-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nds”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nds]"></a>OpenLayers.<wbr>Lang[“nds”]</h1><div class=CBody><p>Dictionary for Plattdüütsch.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nds]"></a>OpenLayers.<wbr>Lang[“nds”]</h1><div class=CBody><p>Dictionary for Plattdüütsch.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings fo [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/nl-js.html b/doc/apidocs/files/OpenLayers/Lang/nl-js.html
index 4589abf..5c3ca1a 100644
--- a/doc/apidocs/files/OpenLayers/Lang/nl-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/nl-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nl”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/nn-js.html b/doc/apidocs/files/OpenLayers/Lang/nn-js.html
index 696e518..bd2a634 100644
--- a/doc/apidocs/files/OpenLayers/Lang/nn-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/nn-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nn”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nn]"></a>OpenLayers.<wbr>Lang[“nn”]</h1><div class=CBody><p>Dictionary for ‪Norsk (nynorsk)‬.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings f [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nn]"></a>OpenLayers.<wbr>Lang[“nn”]</h1><div class=CBody><p>Dictionary for ‪Norsk (nynorsk)‬.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strin [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/oc-js.html b/doc/apidocs/files/OpenLayers/Lang/oc-js.html
index 41280be..a10a16f 100644
--- a/doc/apidocs/files/OpenLayers/Lang/oc-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/oc-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“oc”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/pl-js.html b/doc/apidocs/files/OpenLayers/Lang/pl-js.html
index b539a88..892cd61 100644
--- a/doc/apidocs/files/OpenLayers/Lang/pl-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/pl-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“pl”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/pt-BR-js.html b/doc/apidocs/files/OpenLayers/Lang/pt-BR-js.html
index c8eefdf..6a59410 100644
--- a/doc/apidocs/files/OpenLayers/Lang/pt-BR-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/pt-BR-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“pt-br”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt-br]"></a>OpenLayers.<wbr>Lang[“pt-br”]</h1><div class=CBody><p>Dictionary for Português do Brasil.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or s [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt-br]"></a>OpenLayers.<wbr>Lang[“pt-br”]</h1><div class=CBody><p>Dictionary for Português do Brasil.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or  [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/pt-js.html b/doc/apidocs/files/OpenLayers/Lang/pt-js.html
index 4ca538d..c0c964c 100644
--- a/doc/apidocs/files/OpenLayers/Lang/pt-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/pt-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“pt”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt]"></a>OpenLayers.<wbr>Lang[“pt”]</h1><div class=CBody><p>Dictionary for Português.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt]"></a>OpenLayers.<wbr>Lang[“pt”]</h1><div class=CBody><p>Dictionary for Português.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatte [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/ro-js.html b/doc/apidocs/files/OpenLayers/Lang/ro-js.html
new file mode 100644
index 0000000..7cdeb24
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Lang/ro-js.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ro”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ro]"></a>OpenLayers.<wbr>Lang[“ro”]</h1><div class=CBody><p>Dictionary for Romanian.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>translate: function(</td><td class="PParameter  prettyprint " nowrap>key,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>context</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Looks up a  [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Lang/ru-js.html b/doc/apidocs/files/OpenLayers/Lang/ru-js.html
index 53bcd95..d00bb04 100644
--- a/doc/apidocs/files/OpenLayers/Lang/ru-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/ru-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ru”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ru]"></a>OpenLayers.<wbr>Lang[“ru”]</h1><div class=CBody><p>Dictionary for Русский.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted f [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ru]"></a>OpenLayers.<wbr>Lang[“ru”]</h1><div class=CBody><p>Dictionary for Русский.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/sk-js.html b/doc/apidocs/files/OpenLayers/Lang/sk-js.html
index c927e63..6f09496 100644
--- a/doc/apidocs/files/OpenLayers/Lang/sk-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/sk-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“sk”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[sk]"></a>OpenLayers.<wbr>Lang[“sk”]</h1><div class=CBody><p>Dictionary for Slovenčina.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatte [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[sk]"></a>OpenLayers.<wbr>Lang[“sk”]</h1><div class=CBody><p>Dictionary for Slovenčina.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatt [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/sv-SE-js.html b/doc/apidocs/files/OpenLayers/Lang/sv-SE-js.html
index d143789..bb1fcaf 100644
--- a/doc/apidocs/files/OpenLayers/Lang/sv-SE-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/sv-SE-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“sv”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/te-js.html b/doc/apidocs/files/OpenLayers/Lang/te-js.html
index 128cf6f..9f368d9 100644
--- a/doc/apidocs/files/OpenLayers/Lang/te-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/te-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“te”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[te]"></a>OpenLayers.<wbr>Lang[“te”]</h1><div class=CBody><p>Dictionary for తెలుగు.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted fo [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[te]"></a>OpenLayers.<wbr>Lang[“te”]</h1><div class=CBody><p>Dictionary for తెలుగు.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings  [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/vi-js.html b/doc/apidocs/files/OpenLayers/Lang/vi-js.html
index 3f53881..966ae28 100644
--- a/doc/apidocs/files/OpenLayers/Lang/vi-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/vi-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“vi”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[vi]"></a>OpenLayers.<wbr>Lang[“vi”]</h1><div class=CBody><p>Dictionary for Tiếng Việt.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatte [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[vi]"></a>OpenLayers.<wbr>Lang[“vi”]</h1><div class=CBody><p>Dictionary for Tiếng Việt.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/zh-CN-js.html b/doc/apidocs/files/OpenLayers/Lang/zh-CN-js.html
index 177b4c0..73c053e 100644
--- a/doc/apidocs/files/OpenLayers/Lang/zh-CN-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/zh-CN-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“zh-CN”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Lang/zh-TW-js.html b/doc/apidocs/files/OpenLayers/Lang/zh-TW-js.html
index d440bcb..34c48e1 100644
--- a/doc/apidocs/files/OpenLayers/Lang/zh-TW-js.html
+++ b/doc/apidocs/files/OpenLayers/Lang/zh-TW-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“zh-TW”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer-js.html b/doc/apidocs/files/OpenLayers/Layer-js.html
index 5241db3..e360863 100644
--- a/doc/apidocs/files/OpenLayers/Layer-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,9 +31,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">layer.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">layer.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.map"></a>map</h3><div class=CBody><p>{<a href="Map-js.html#OpenLayers.Map" class=LClass id=link27 onMouseOver="ShowTip(event, 'tt1', 'link27')" onMouseOut="HideTip('tt1')">OpenLayers.Map</a>} This variable is set when the layer is added to the map, via the accessor function setMap().</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.map"></a>map</h3><div class=CBody><p>{<a href="Map-js.html#OpenLayers.Map" class=LClass id=link28 onMouseOver="ShowTip(event, 'tt1', 'link28')" onMouseOut="HideTip('tt1')">OpenLayers.Map</a>} This variable is set when the layer is added to the map, via the accessor function setMap().</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>{Boolean} Whether or not the layer is a base layer.  This should be set individually by all subclasses.  Default is false</p></div></div></div>
 
@@ -41,25 +41,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.visibility"></a>visibility</h3><div class=CBody><p>{Boolean} The layer should be displayed in the map.   Default is true.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.attribution"></a>attribution</h3><div class=CBody><p>{String} Attribution string, displayed when an <a href="Control/Attribution-js.html#OpenLayers.Control.Attribution" class=LClass id=link28 onMouseOver="ShowTip(event, 'tt2', 'link28')" onMouseOut="HideTip('tt2')">OpenLayers.Control.Attribution</a> has been added to the map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.attribution"></a>attribution</h3><div class=CBody><p>{String} Attribution string, displayed when an <a href="Control/Attribution-js.html#OpenLayers.Control.Attribution" class=LClass id=link29 onMouseOver="ShowTip(event, 'tt2', 'link29')" onMouseOut="HideTip('tt2')">OpenLayers.Control.Attribution</a> has been added to the map.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link29 onMouseOver="ShowTip(event, 'tt3', 'link29')" onMouseOut="HideTip('tt3')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for th [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link30 onMouseOver="ShowTip(event, 'tt3', 'link30')" onMouseOut="HideTip('tt3')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for th [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.gutter"></a>gutter</h3><div class=CBody><p>{Integer} Determines the width (in pixels) of the gutter around image tiles to ignore.   By setting this property to a non-zero value, images will be requested that are wider and taller than the tile size by a value of 2 x gutter.   This allows artifacts of rendering at tile edges to be ignored.   Set a gutter value that is equal to half the size o [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.projection"></a>projection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link30 onMouseOver="ShowTip(event, 'tt4', 'link30')" onMouseOut="HideTip('tt4')">OpenLayers.Projection</a>} or {<a href="BaseTypes-js.html#OpenLayers.String" class=LClass id=link31 onMouseOver="ShowTip(event, 'tt5', 'link31')" onMouseOut="HideTip('tt5')">String</a>} Specifies the projecti [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.projection"></a>projection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link31 onMouseOver="ShowTip(event, 'tt4', 'link31')" onMouseOut="HideTip('tt4')">OpenLayers.Projection</a>} or {<a href="BaseTypes-js.html#OpenLayers.String" class=LClass id=link32 onMouseOver="ShowTip(event, 'tt5', 'link32')" onMouseOut="HideTip('tt5')">String</a>} Specifies the projecti [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.units"></a>units</h3><div class=CBody><p>{String} The layer map units.   Defaults to null.   Possible values are ‘degrees’ (or ‘dd’), ‘m’, ‘ft’, ‘km’, ‘mi’, ‘inches’.  Normally taken from the projection.  Only required if both map and layers do not define a projection, or if they define a projection whi [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.scales"></a>scales</h3><div class=CBody><p>{Array}  An array of map scales in descending order.   The values in the array correspond to the map scale denominator.   Note that these values only make sense if the display (monitor) resolution of the client is correctly guessed by whomever is configuring the application.   In addition, the units property must also be set.  Use <a href="#Op [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.scales"></a>scales</h3><div class=CBody><p>{Array}  An array of map scales in descending order.   The values in the array correspond to the map scale denominator.   Note that these values only make sense if the display (monitor) resolution of the client is correctly guessed by whomever is configuring the application.   In addition, the units property must also be set.  Use <a href="#Op [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.resolutions"></a>resolutions</h3><div class=CBody><p>{Array} A list of map resolutions (map units per pixel) in descending order.   If this is not set in the layer constructor, it will be set based on other resolution related properties (maxExtent, maxResolution, maxScale, etc.).</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the layer.   Defaults to null.</p><p>The center of these bounds will not stray outside of the viewport extent during panning.   In addition, if <a href="#OpenLayers.Layer.displayOutsideMaxExten [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the layer.   Defaults to null.</p><p>The center of these bounds will not stray outside of the viewport extent during panning.   In addition, if <a href="#OpenLayers.Layer.displayOutsideMaxExten [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.minExtent"></a>minExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The minimum extent for the layer.   Defaults to null.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Default max is 360 deg / 256 px, which corresponds to zoom level 0 on gmaps.   Specify a different value in the layer options if you are not using the default <a href="Map-js.html#OpenLayers.Map.tileSize" class=LProperty id=link35 onMouseOver="ShowTip(event, 'tt29', 'link35')" onMouseOut="HideTip('tt29')">OpenLayers.Map.tileSize</a> and [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Default max is 360 deg / 256 px, which corresponds to zoom level 0 on gmaps.   Specify a different value in the layer options if you are not using the default <a href="Map-js.html#OpenLayers.Map.tileSize" class=LProperty id=link36 onMouseOver="ShowTip(event, 'tt29', 'link36')" onMouseOut="HideTip('tt29')">OpenLayers.Map.tileSize</a> and [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.minResolution"></a>minResolution</h3><div class=CBody><p>{Float}</p></div></div></div>
 
@@ -87,11 +87,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.redraw"></a>redraw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">redraw: function()</td></tr></table></blockquote><p>Redraws the layer.   Returns true if the layer was redrawn, false if not.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The layer was redrawn.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Jus [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Jus [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getImageSize"></a>getImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getImageSize: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getImageSize"></a>getImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getImageSize: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getVisibility"></a>getVisibility</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getVisibility: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean} The layer should be displayed (if in range).</p></div></div></div>
 
@@ -105,17 +105,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getResolution"></a>getResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getResolution: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The currently selected resolution of the map, taken from the resolutions array, indexed by current zoom level.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link40 onMouseOver="ShowTip(event, 'tt20', 'link40')" onMouseOut="HideTip('tt20')">OpenLayers.Bounds</a> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link41 onMouseOver="ShowTip(event, 'tt20', 'link41')" onMouseOut="HideTip('tt20')">OpenLayers.Bounds</a> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function(</td><td class="PParameter  prettyprint " nowrap>extent,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function(</td><td class="PParameter  prettyprint " nowrap>extent,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cl [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getResolutionForZoom"></a>getResolutionForZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getResolutionForZoom: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getZoomForResolution"></a>getZoomForResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForResolution: function(</td><td class="PParameter  prettyprint " nowrap>resolution,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getLonLatFromViewPortPx"></a>getLonLatFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromViewPortPx: function (</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getLonLatFromViewPortPx"></a>getLonLatFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromViewPortPx: function (</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " now [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " now [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity: function(</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
 
@@ -125,10 +125,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html b/doc/apidocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html
index fd7b713..bf912df 100644
--- a/doc/apidocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.ArcGIS93Rest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/ArcGISCache-js.html b/doc/apidocs/files/OpenLayers/Layer/ArcGISCache-js.html
index 2b4bd55..1f3ed14 100644
--- a/doc/apidocs/files/OpenLayers/Layer/ArcGISCache-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/ArcGISCache-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGISCache.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGISCache.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/ArcIMS-js.html b/doc/apidocs/files/OpenLayers/Layer/ArcIMS-js.html
index 77a48f1..c535790 100644
--- a/doc/apidocs/files/OpenLayers/Layer/ArcIMS-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/ArcIMS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.ArcIMS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Bing-js.html b/doc/apidocs/files/OpenLayers/Layer/Bing-js.html
index 5813aac..d6471fb 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Bing-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Bing-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Bing - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Bing"></a>OpenLayers.<wbr>Layer.Bing</h1><div class=CBody><p>Bing layer using direct tile access as provided by Bing Maps REST Services.  See <a href="http://msdn.microsoft.com/en-us/library/ff701713.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701713.aspx</a> for more information.  Note: Terms of Service compliant use requires t [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Bing"></a>OpenLayers.<wbr>Layer.Bing</h1><div class=CBody><p>Bing layer using direct tile access as provided by Bing Maps REST Services.  See <a href="http://msdn.microsoft.com/en-us/library/ff701713.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701713.aspx</a> for more information.  Note: Terms of Service compliant use requires t [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.Properties"></a>Properties</h3></div></div>
 
@@ -21,7 +21,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.metadataParams"></a>metadataParams</h3><div class=CBody><p>{Object} Optional url parameters for the Get Imagery Metadata request as described here: <a href="http://msdn.microsoft.com/en-us/library/ff701716.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701716.aspx</a></p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote></div>< [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.protocol"></a>protocol</h3><div class=CBody><p>{String} Protocol to use to fetch Imagery Metadata, tiles and bing logo Can be ‘http:’ ‘https:’ or ‘’</p><p>Warning: tiles may not be available under both HTTP and HTTPS protocols.  Microsoft approved use of both HTTP and HTTPS urls for tiles.  However this is undocumented and the Imagery Metadata API always  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.Constructor"></a>Constructor</h3></div></div>
 
@@ -33,7 +35,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=CHe [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=CHe [...]
 
 </div><!--Content-->
 
@@ -41,15 +43,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CClass>The attribution control adds at [...]
+<div class=CToolTip id="tt1"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relatively little. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterP [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Boxes-js.html b/doc/apidocs/files/OpenLayers/Layer/Boxes-js.html
index a037c4c..847a0b3 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Boxes-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Boxes-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Boxes - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/EventPane-js.html b/doc/apidocs/files/OpenLayers/Layer/EventPane-js.html
index 34fe66d..3ac8166 100644
--- a/doc/apidocs/files/OpenLayers/Layer/EventPane-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/EventPane-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.EventPane - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/FixedZoomLevels-js.html b/doc/apidocs/files/OpenLayers/Layer/FixedZoomLevels-js.html
index 56b9712..95a375a 100644
--- a/doc/apidocs/files/OpenLayers/Layer/FixedZoomLevels-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/FixedZoomLevels-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.FixedZoomLevels - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/GeoRSS-js.html b/doc/apidocs/files/OpenLayers/Layer/GeoRSS-js.html
index 6b6edc5..2b9c73d 100644
--- a/doc/apidocs/files/OpenLayers/Layer/GeoRSS-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/GeoRSS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.GeoRSS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Google-js.html b/doc/apidocs/files/OpenLayers/Layer/Google-js.html
index c62bc42..4eaa565 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Google-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Google-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Google - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -91,10 +91,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Google/v3-js.html b/doc/apidocs/files/OpenLayers/Layer/Google/v3-js.html
index 4c3bc58..efe8c04 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Google/v3-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Google/v3-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google/v3.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head>< [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google/v3.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head>< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="v3.js"></a>v3.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#v3.js" >v3.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr  [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="v3.js"></a>v3.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#v3.js" >v3.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Google.v3"></a>OpenLayers.<wbr>Layer.<wbr>Google.v3</h3><div class=CBody><p>Mixin providing functionality specific to the Google Maps API v3.</p><p>To use this layer, you must include the GMaps v3 API in your html.</p><p>Because OpenLayers needs to control mouse events, it isolates the GMaps mapObject (the DOM elements provided by Google) using the EventPane.  However, because the Terms of Use requir [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Google.v3"></a>OpenLayers.<wbr>Layer.<wbr>Google.v3</h3><div class=CBody><p>Mixin providing functionality specific to the Google Maps API v3.</p><p>To use this layer, you must include the GMaps v3 API in your html.</p><p>Note that this layer configures the google.maps.map object with the “disableDefaultUI” option set to true.  Using UI controls that the Google Maps API provides is not sup [...]
 
 <div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="DEFAULTS"></a>DEFAULTS</h3><div class=CBody><p>{Object} It is not recommended to change the properties set here.  Note that Google.v3 layers only work when sphericalMercator is set to true.</p><blockquote><pre class="prettyprint">{
     sphericalMercator: true,
@@ -30,7 +30,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="onMapResize"></a>onMapResize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectBoundsFromOLBounds"></a>getMapObjectBoundsFromOLBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectBoundsFromOLBounds: function(</td><td class="PParameter  prettyprint " nowrap>olBounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectBoundsFromOLBounds"></a>getMapObjectBoundsFromOLBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectBoundsFromOLBounds: function(</td><td class="PParameter  prettyprint " nowrap>olBounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectLonLatFromMapObjectPixel"></a>getMapObjectLonLatFromMapObjectPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectLonLatFromMapObjectPixel: function(</td><td class="PParameter  prettyprint " nowrap>moPixel</td><td class="PAfterParameters  prettypr [...]
 
@@ -44,23 +44,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectPixelFromXY"></a>getMapObjectPixelFromXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectPixelFromXY: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PA [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Clean up this layer.</p></div></div></div>
-
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectBoundsFromOLBounds: function(</t [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectBoundsFromOLBounds: function(</t [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Grid-js.html b/doc/apidocs/files/OpenLayers/Layer/Grid-js.html
index f813a7d..aa6a809 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Grid-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Grid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Grid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,33 +11,31 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h1><div class=CBody><p>Base class for layers that use a lattice of tiles.   Create a new grid layer with the <a href="#OpenLayers.Layer.Grid.OpenLayers.Layer.Grid" class=LConstructor id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">OpenLayers.Layer.Grid</a> constructor.</p><h4 class=CHeading>Inherits from [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h1><div class=CBody><p>Base class for layers that use a lattice of tiles.   Create a new grid layer with the <a href="#OpenLayers.Layer.Grid.OpenLayers.Layer.Grid" class=LConstructor id=link12 onMouseOver="ShowTip(event, 'tt11', 'link12')" onMouseOut="HideTip('tt11')">OpenLayers.Layer.Grid</a> constructor.</p><h4 class=CHeading>Inherits  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link13 onMouseOver="ShowTip(event, 'tt1', 'link13')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOrigin"></a>tileOrigin</h3><div class=CBody><p>{<a href="../BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt2', 'link11')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} Optional origin for aligning the grid of tiles.  If provided, requests for tiles at all resolutions will be aligned with this location (no tiles shall overlap this locati [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOrigin"></a>tileOrigin</h3><div class=CBody><p>{<a href="../BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link14 onMouseOver="ShowTip(event, 'tt2', 'link14')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} Optional origin for aligning the grid of tiles.  If provided, requests for tiles at all resolutions will be aligned with this location (no tiles shall overlap this locati [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a> instances created by this Layer, if supported by the tile class.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link16 onMouseOver="ShowTip(event, 'tt3', 'link16')" onMouseOut="HideTip('tt3')">OpenLayers.Tile</a> instances created by this Layer, if supported by the tile class.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileClass"></a>tileClass</h3><div class=CBody><p>{<a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a>} The tile class to use for this layer.  Defaults is OpenLayers.Tile.Image.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileClass"></a>tileClass</h3><div class=CBody><p>{<a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link17 onMouseOver="ShowTip(event, 'tt3', 'link17')" onMouseOut="HideTip('tt3')">OpenLayers.Tile</a>} The tile class to use for this layer.  Defaults is OpenLayers.Tile.Image.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.singleTile"></a>singleTile</h3><div class=CBody><p>{Boolean} Moves the layer into single-tile mode, meaning that one tile will be loaded.  The tile’s size will be determined by the ‘ratio’ property.  When the tile is dragged such that it does not cover the entire viewport, it is reloaded.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.ratio"></a>ratio</h3><div class=CBody><p>{Float} Used only when in single-tile mode, this specifies the ratio of the size of the single tile to the size of the map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.ratio"></a>ratio</h3><div class=CBody><p>{Float} Used only when in single-tile mode, this specifies the ratio of the size of the single tile to the size of the map.  Default value is 1.5.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.buffer"></a>buffer</h3><div class=CBody><p>{Integer} Used only when in gridded mode, this specifies the number of extra rows and colums of tiles on each side which will surround the minimum grid tiles to cover the map.  For very slow loading layers, a larger value may increase performance somewhat when dragging, but will increase bandwidth use significantly.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.transitionEffect"></a>transitionEffect</h3><div class=CBody><p>{String} The transition effect to use when the map is zoomed.  Two posible values:</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>null</td><td class=CDLDescription>No transition effect (the default).</td></tr><tr><td class=CDLEntry>”resize”</td><td class=CDLDescription>Existin [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.transitionEffect"></a>transitionEffect</h3><div class=CBody><p>{String} The transition effect to use when the map is zoomed.  Two posible values:</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>”resize”</td><td class=CDLDescription>Existing tiles are resized on zoom to provide a visual effect of the zoom having taken place immediately.&nbs [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.numLoadingTiles"></a>numLoadingTiles</h3><div class=CBody><p>{Integer} How many tiles are still loading?</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileLoadingDelay"></a>tileLoadingDelay</h3><div class=CBody><p>{Integer} Number of milliseconds before we shift and load tiles when panning.  Ignored if <OpenLayers.Animation.isNative> is true.  Default is 85.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeBackBufferDelay"></a>removeBackBufferDelay</h3><div class=CBody><p>{Number} Delay for removing the backbuffer when all tiles have finished loading.  Can be set to 0 when no css opacity transitions for the olTileImage class are used.  Default is 0 for <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link18 onMouseOver="ShowTip(event, 'tt13', 'link18')" onMouseOut="HideTip [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeBackBufferDelay"></a>removeBackBufferDelay</h3><div class=CBody><p>{Number} Delay for removing the backbuffer when all tiles have finished loading.  Can be set to 0 when no css opacity transitions for the olTileImage class are used.  Default is 0 for <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt11', 'link13')" onMouseOut="HideTip [...]
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.className"></a>className</h3><div class=CBody><p>{String} Name of the class added to the layer div.  If not set in the options passed to the constructor then className defaults to “olLayerGridSingleTile” for single tile layers (see <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link15 onMouseOver="ShowTip(event, 'tt11', 'link15')" onMouseOut="HideTip('tt11')">singleTi [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.className"></a>className</h3><div class=CBody><p>{String} Name of the class added to the layer div.  If not set in the options passed to the constructor then className defaults to “olLayerGridSingleTile” for single tile layers (see <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link20 onMouseOver="ShowTip(event, 'tt13', 'link20')" onMouseOut="HideTip('tt13')">singleTi [...]
     -webkit-transition: opacity 0.2s linear;
     -moz-transition: opacity 0.2s linear;
     -o-transition: opacity 0.2s linear;
@@ -47,7 +45,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
     -moz-transition: opacity 0.2s linear;
     -o-transition: opacity 0.2s linear;
     transition: opacity 0.2s linear;
-}</pre></blockquote><p>In that case, to avoid flash effects, <a href="#OpenLayers.Layer.Grid.removeBackBufferDelay" class=LProperty id=link16 onMouseOver="ShowTip(event, 'tt13', 'link16')" onMouseOut="HideTip('tt13')">removeBackBufferDelay</a> should not be zero.</p></div></div></div>
+}</pre></blockquote><p>In that case, to avoid flash effects, <a href="#OpenLayers.Layer.Grid.removeBackBufferDelay" class=LProperty id=link21 onMouseOver="ShowTip(event, 'tt15', 'link21')" onMouseOut="HideTip('tt15')">removeBackBufferDelay</a> should not be zero.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.Constructor"></a>Constructor</h3></div></div>
 
@@ -57,15 +55,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Deconstruct the layer and clear the grid.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create a  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.mergeNewParams"></a>mergeNewParams</h3><div class=CBody><p>Refetches tiles with new params merged, keeping a backbuffer.  Each loading new tile will have a css class of ‘.olTileReplacing’.  If a stylesheet applies a ‘display: none’ style to that class, any fade-in transition will not apply, and backbuffers for each tile will be removed as soon as the tile is loaded.< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addOptions"></a>addOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addOptions: function (</td><td class="PParameter  prettyprint " nowrap>newOptions,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reinitialize</td><td class [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create a  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTilesBounds"></a>getTilesBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTilesBounds: function()</td></tr></table></blockquote><p>Return the bounds of the tile grid.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link19 onMouseOver="ShowTip(event, 'tt1 [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTilesBounds"></a>getTilesBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTilesBounds: function()</td></tr></table></blockquote><p>Return the bounds of the tile grid.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link24 onMouseOver="ShowTip(event, 'tt1 [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileBounds"></a>getTileBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBounds: function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileBounds"></a>getTileBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBounds: function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
 
 </div><!--Content-->
 
@@ -73,15 +75,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Deconstruct the layer and clear the grid.</div></div><div class=CToo [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt3"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relatively little. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpad [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/HTTPRequest-js.html b/doc/apidocs/files/OpenLayers/Layer/HTTPRequest-js.html
index 8f9dab0..bd189d9 100644
--- a/doc/apidocs/files/OpenLayers/Layer/HTTPRequest-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/HTTPRequest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.HTTPRequest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Image-js.html b/doc/apidocs/files/OpenLayers/Layer/Image-js.html
index 63d55a6..c6e4f80 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Image-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Image-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Image - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/KaMap-js.html b/doc/apidocs/files/OpenLayers/Layer/KaMap-js.html
index 9d6deaf..2631c59 100644
--- a/doc/apidocs/files/OpenLayers/Layer/KaMap-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/KaMap-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.KaMap - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/KaMapCache-js.html b/doc/apidocs/files/OpenLayers/Layer/KaMapCache-js.html
index 28f431e..a06a361 100644
--- a/doc/apidocs/files/OpenLayers/Layer/KaMapCache-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/KaMapCache-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.KaMapCache - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/MapGuide-js.html b/doc/apidocs/files/OpenLayers/Layer/MapGuide-js.html
index 6c8eaa7..735150e 100644
--- a/doc/apidocs/files/OpenLayers/Layer/MapGuide-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/MapGuide-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.MapGuide - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/MapServer-js.html b/doc/apidocs/files/OpenLayers/Layer/MapServer-js.html
index 3576b1f..de8484c 100644
--- a/doc/apidocs/files/OpenLayers/Layer/MapServer-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/MapServer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.MapServer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Markers-js.html b/doc/apidocs/files/OpenLayers/Layer/Markers-js.html
index 7e5a62f..1f94a05 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Markers-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Markers-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Markers - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/OSM-js.html b/doc/apidocs/files/OpenLayers/Layer/OSM-js.html
index 00afc7d..d552ebe 100644
--- a/doc/apidocs/files/OpenLayers/Layer/OSM-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/OSM-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.OSM - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -14,7 +14,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.OSM"></a>OpenLayers.<wbr>Layer.OSM</h1><div class=CBody><p>This layer allows accessing OpenStreetMap tiles.  By default the OpenStreetMap hosted tile.openstreetmap.org Mapnik tileset is used.  If you wish to use a different layer instead, you need to provide a different URL to the constructor.  Here’s an example for using OpenCycleMap:</p><blockquote><pre cla [...]
   ["http://a.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
    "http://b.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
-   "http://c.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png"]);</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry [...]
+   "http://c.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png"]);</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.Properties"></a>Properties</h3></div></div>
 
@@ -25,11 +25,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
    "http://b.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
    "http://c.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png"]);</pre></blockquote></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote><p>When using OSM tilesets other than the default ones, it may be necessary to s [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt1', 'link3')" onMouseOut="HideTip('tt1')">OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote><p>When  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.OpenLayers.Layer.OSM"></a>OpenLayers.<wbr>Layer.OSM</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} The layer name.</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} The tileset URL scheme.</td></tr><tr><td class=CDLEntry>options</td><td [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.OpenLayers.Layer.OSM"></a>OpenLayers.<wbr>Layer.OSM</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} The layer name.</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} The tileset URL scheme.</td></tr><tr><td class=CDLEntry>options</td><td [...]
 
 </div><!--Content-->
 
@@ -37,15 +37,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>The XYZ class is designed to make it easier for people who have tiles arranged by a standard XYZ grid.</div></div><div class=CToolTip id="tt2"><div class=CProperty>{Integer} Used only when in gridded mode, this specifies the number of extra rows and colums of tiles on each side which will surround the minimum grid tiles to cover the map. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relatively little. </div></div><div class=CToolTip id="tt2"><div class=CClass>The XYZ class is designed to make it easier for people who have tiles arranged by a standard XYZ grid.</div></div><div class=CToolTip id="tt3"><div class=CProperty>{Integer} Used only when in gridded mode, this specifies the number of extra rows and colums of tiles on each  [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/PointGrid-js.html b/doc/apidocs/files/OpenLayers/Layer/PointGrid-js.html
index 0683b08..b0655ad 100644
--- a/doc/apidocs/files/OpenLayers/Layer/PointGrid-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/PointGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.PointGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ var points = new OpenLayers.Layer.PointGrid({dx: 5, dy: 10, rotation: 15});</pre
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/PointTrack-js.html b/doc/apidocs/files/OpenLayers/Layer/PointTrack-js.html
index 5bc6197..b9b65fd 100644
--- a/doc/apidocs/files/OpenLayers/Layer/PointTrack-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/PointTrack-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.PointTrack - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/SphericalMercator-js.html b/doc/apidocs/files/OpenLayers/Layer/SphericalMercator-js.html
index f634d5d..8510af8 100644
--- a/doc/apidocs/files/OpenLayers/Layer/SphericalMercator-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/SphericalMercator-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.SphericalMercator - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/TMS-js.html b/doc/apidocs/files/OpenLayers/Layer/TMS-js.html
index 10c1899..b886f3c 100644
--- a/doc/apidocs/files/OpenLayers/Layer/TMS-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/TMS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.TMS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -56,10 +56,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Text-js.html b/doc/apidocs/files/OpenLayers/Layer/Text-js.html
index f00edc8..b5e7e6b 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Text-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Text-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Text - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -34,10 +34,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/TileCache-js.html b/doc/apidocs/files/OpenLayers/Layer/TileCache-js.html
index 5f1f424..eaa7784 100644
--- a/doc/apidocs/files/OpenLayers/Layer/TileCache-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/TileCache-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.TileCache - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/UTFGrid-js.html b/doc/apidocs/files/OpenLayers/Layer/UTFGrid-js.html
index 604d303..3224f8c 100644
--- a/doc/apidocs/files/OpenLayers/Layer/UTFGrid-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/UTFGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.UTFGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.UTFGrid"></a>OpenLayers.<wbr>Layer.<wbr>UTFGrid</h1><div class=CBody><p>This Layer reads from UTFGrid tiled data sources.   Since UTFGrids are essentially JSON-based ASCII art with attached attributes, they are not visibly rendered.   In order to use them in the map, you must add a <a href="../Control/UTFGrid-js.html#OpenLayers.Control.UTFGrid" class=LClass id=link4 onM [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.UTFGrid"></a>OpenLayers.<wbr>Layer.<wbr>UTFGrid</h1><div class=CBody><p>This Layer reads from UTFGrid tiled data sources.   Since UTFGrids are essentially JSON-based ASCII art with attached attributes, they are not visibly rendered.   In order to use them in the map, you must add a <a href="../Control/UTFGrid-js.html#OpenLayers.Control.UTFGrid" class=LClass id=link4 onM [...]
     url: "/tiles/world_utfgrid/${z}/${x}/${y}.json",
     utfgridResolution: 4,
     displayInLayerSwitcher: false
@@ -24,11 +24,11 @@ var control = new OpenLayers.Control.UTFGrid({
     callback: function(dataLookup) {
         // do something with returned data
     }
-})</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Layer.UTFGrid" >OpenLayers.<wbr>Layer.<wbr>UTFGri [...]
+})</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Layer.UTFGrid" >OpenLayers.<wbr>Layer.<wbr>UTFGri [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>Default is true, as this is designed to be a base tile source.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>Default is false, as UTFGrids are designed to be a transparent overlay layer.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.projection"></a>projection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">OpenLayers.Projection</a>} Source projection for the UTFGrids.   Default is “EPSG:900913”.</p></div></div></div>
 
@@ -54,10 +54,10 @@ var control = new OpenLayers.Control.UTFGrid({
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Vector-js.html b/doc/apidocs/files/OpenLayers/Layer/Vector-js.html
index c318175..72d6e1a 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Vector-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Vector-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Vector - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Vector"></a>OpenLayers.<wbr>Layer.<wbr>Vector</h1><div class=CBody><p>Instances of OpenLayers.Layer.Vector are used to render vector data from a variety of sources.  Create a new vector layer with the <a href="#OpenLayers.Layer.Vector.OpenLayers.Layer.Vector" class=LConstructor id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">OpenLayers.L [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Vector"></a>OpenLayers.<wbr>Layer.<wbr>Vector</h1><div class=CBody><p>Instances of OpenLayers.Layer.Vector are used to render vector data from a variety of sources.  Create a new vector layer with the <a href="#OpenLayers.Layer.Vector.OpenLayers.Layer.Vector" class=LConstructor id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">OpenLayers.L [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.Properties"></a>Properties</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>{Boolean} The layer is a base layer.   Default is false.   Set this property in the layer options.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.isFixed"></a>isFixed</h3><div class=CBody><p>{Boolean} Whether the layer remains in one place while dragging the map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.isFixed"></a>isFixed</h3><div class=CBody><p>{Boolean} Whether the layer remains in one place while dragging the map.  Note that setting this to true will move the layer to the bottom of the layer stack.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.features"></a>features</h3><div class=CBody><p>{Array(<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link18 onMouseOver="ShowTip(event, 'tt1', 'link18')" onMouseOut="HideTip('tt1')">OpenLayers.Feature.Vector</a>)}</p></div></div></div>
 
@@ -73,10 +73,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Vector/RootContainer-js.html b/doc/apidocs/files/OpenLayers/Layer/Vector/RootContainer-js.html
index b30f5d6..6f19bc1 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Vector/RootContainer-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Vector/RootContainer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Vector.RootContainer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="N [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/WMS-js.html b/doc/apidocs/files/OpenLayers/Layer/WMS-js.html
index 8895154..87012df 100644
--- a/doc/apidocs/files/OpenLayers/Layer/WMS-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/WMS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.WMS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/WMTS-js.html b/doc/apidocs/files/OpenLayers/Layer/WMTS-js.html
index 7bede7f..23bd226 100644
--- a/doc/apidocs/files/OpenLayers/Layer/WMTS-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/WMTS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.WMTS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,7 +35,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.formatSuffix"></a>formatSuffix</h3><div class=CBody><p>{String} For REST request encoding, an image format suffix must be included in the request.   If not provided, the suffix will be derived from the <a href="#OpenLayers.Layer.WMTS.format" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt10', 'link13')" onMouseOut="HideTip('tt10')">format</a> property.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.matrixIds"></a>matrixIds</h3><div class=CBody><p>{Array} A list of tile matrix identifiers.   If not provided, the matrix identifiers will be assumed to be integers corresponding to the map zoom level.   If a list of strings is provided, each item should be the matrix identifier that corresponds to the map zoom level.  Additionally, a list of objects can be provided.   Each object [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.matrixIds"></a>matrixIds</h3><div class=CBody><p>{Array} A list of tile matrix identifiers.   If not provided, the matrix identifiers will be assumed to be integers corresponding to the map zoom level.   If a list of strings is provided, each item should be the matrix identifier that corresponds to the map zoom level.  Additionally, a list of objects can be provided.   Each object [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.dimensions"></a>dimensions</h3><div class=CBody><p>{Array} For RESTful request encoding, extra dimensions may be specified.  Items in this list should be property names in the <a href="#OpenLayers.Layer.WMTS.params" class=LProperty id=link18 onMouseOver="ShowTip(event, 'tt5', 'link18')" onMouseOut="HideTip('tt5')">params</a> object.  Values of extra dimensions will be determined from the co [...]
 
@@ -67,10 +67,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/WorldWind-js.html b/doc/apidocs/files/OpenLayers/Layer/WorldWind-js.html
index ed71946..7df136f 100644
--- a/doc/apidocs/files/OpenLayers/Layer/WorldWind-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/WorldWind-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.WorldWind - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/XYZ-js.html b/doc/apidocs/files/OpenLayers/Layer/XYZ-js.html
index 5568fcc..d472511 100644
--- a/doc/apidocs/files/OpenLayers/Layer/XYZ-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/XYZ-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.XYZ - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.XYZ"></a>OpenLayers.<wbr>Layer.XYZ</h1><div class=CBody><p>The XYZ class is designed to make it easier for people who have tiles arranged by a standard XYZ grid.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Layer.Grid</a></li></ [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.XYZ"></a>OpenLayers.<wbr>Layer.XYZ</h1><div class=CBody><p>The XYZ class is designed to make it easier for people who have tiles arranged by a standard XYZ grid.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Layer.Grid</a></li></ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>Default is true, as this is designed to be a base tile source.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.sphericalMecator"></a>sphericalMecator</h3><div class=CBody><p>Whether the tile extents should be set to the defaults for spherical mercator.  Useful for things like OpenStreetMap.  Default is false, except for the OSM subclass.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.sphericalMercator"></a>sphericalMercator</h3><div class=CBody><p>Whether the tile extents should be set to the defaults for spherical mercator.  Useful for things like OpenStreetMap.  Default is false, except for the OSM subclass.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.zoomOffset"></a>zoomOffset</h3><div class=CBody><p>{Number} If your cache has more zoom levels than you want to provide access to with this layer, supply a zoomOffset.   This zoom offset is added to the current map zoom level to determine the level for a requested tile.   For example, if you supply a zoomOffset of 3, when the map is at the zoom 0, tiles will be requested from level 3 of your [...]
 
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Layer/Zoomify-js.html b/doc/apidocs/files/OpenLayers/Layer/Zoomify-js.html
index 3e97c4c..be5666a 100644
--- a/doc/apidocs/files/OpenLayers/Layer/Zoomify-js.html
+++ b/doc/apidocs/files/OpenLayers/Layer/Zoomify-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Zoomify - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Map-js.html b/doc/apidocs/files/OpenLayers/Map-js.html
index 19d8d4c..3e2ccf1 100644
--- a/doc/apidocs/files/OpenLayers/Map-js.html
+++ b/doc/apidocs/files/OpenLayers/Map-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Map - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Java [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Map"></a>OpenLayers.Map</h1><div class=CBody><p>Instances of OpenLayers.Map are interactive maps embedded in a web page.  Create a new map with the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link67 onMouseOver="ShowTip(event, 'tt65', 'link67')" onMouseOut="HideTip('tt65')">OpenLayers.Map</a> constructor.</p><p>On their own maps do not provide much functionality [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Map"></a>OpenLayers.Map</h1><div class=CBody><p>Instances of OpenLayers.Map are interactive maps embedded in a web page.  Create a new map with the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link68 onMouseOver="ShowTip(event, 'tt66', 'link68')" onMouseOut="HideTip('tt66')">OpenLayers.Map</a> constructor.</p><p>On their own maps do not provide much functionality [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Constants"></a>Constants</h3></div></div>
 
@@ -19,31 +19,31 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">map.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of this [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">map.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of this [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} An events object that handles all events on the map</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.allOverlays"></a>allOverlays</h3><div class=CBody><p>{Boolean} Allow the map to function with “overlays” only.   Defaults to false.   If true, the lowest layer in the draw order will act as the base layer.   In addition, if set to true, all layers will have isBaseLayer set to false when they are added to the map.</p><h4 class=CHeading>Note</h4><p>If you set map.allOverlays to true [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.allOverlays"></a>allOverlays</h3><div class=CBody><p>{Boolean} Allow the map to function with “overlays” only.   Defaults to false.   If true, the lowest layer in the draw order will act as the base layer.   In addition, if set to true, all layers will have isBaseLayer set to false when they are added to the map.</p><h4 class=CHeading>Note</h4><p>If you set map.allOverlays to true [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.div"></a>div</h3><div class=CBody><p>{DOMElement|String} The element that contains the map (or an id for that element).   If the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link72 onMouseOver="ShowTip(event, 'tt65', 'link72')" onMouseOut="HideTip('tt65')">OpenLayers.Map</a> constructor is called with two arguments, this should be provided as the first argument.  Alternatively, t [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.div"></a>div</h3><div class=CBody><p>{DOMElement|String} The element that contains the map (or an id for that element).   If the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link74 onMouseOver="ShowTip(event, 'tt66', 'link74')" onMouseOut="HideTip('tt66')">OpenLayers.Map</a> constructor is called with two arguments, this should be provided as the first argument.  Alternatively, t [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.layers"></a>layers</h3><div class=CBody><p>{Array(<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>)} Ordered list of layers in the map</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.controls"></a>controls</h3><div class=CBody><p>{Array(<a href="Control-js.html#OpenLayers.Control" class=LClass id=link77 onMouseOver="ShowTip(event, 'tt1', 'link77')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a>)} List of controls associated with the map.</p><p>If not provided in the map options at construction, the map will by default be given the following controls if present in the build:</p><ul>< [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.controls"></a>controls</h3><div class=CBody><p>{Array(<a href="Control-js.html#OpenLayers.Control" class=LClass id=link79 onMouseOver="ShowTip(event, 'tt1', 'link79')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a>)} List of controls associated with the map.</p><p>If not provided in the map options at construction, the map will by default be given the following controls if present in the build:</p><ul>< [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.baseLayer"></a>baseLayer</h3><div class=CBody><p>{<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>} The currently selected base layer.   This determines min/max zoom level, projection, etc.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.options"></a>options</h3><div class=CBody><p>{Object} The options object passed to the class constructor.  Read-only.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link84 onMouseOver="ShowTip(event, 'tt2', 'link84')" onMouseOut="HideTip('tt2')">OpenLayers.Size</a>} Set in the map options to override the default tile size for this map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link86 onMouseOver="ShowTip(event, 'tt2', 'link86')" onMouseOut="HideTip('tt2')">OpenLayers.Size</a>} Set in the map options to override the default tile size for this map.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.projection"></a>projection</h3><div class=CBody><p>{String} Set in the map options to specify the default projection for layers added to this map.  When using a projection other than EPSG:4326 (CRS:84, Geographic) or EPSG:3857 (EPSG:900913, Web Mercator), also set maxExtent, maxResolution or resolutions.   Default is “EPSG:4326”.  Note that the projection of the map is usually det [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.projection"></a>projection</h3><div class=CBody><p>{String} Set in the map options to specify the default projection for layers added to this map.  When using a projection other than EPSG:4326 (CRS:84, Geographic) or EPSG:3857 (EPSG:900913, Web Mercator), also set maxExtent, maxResolution or resolutions.   Default is “EPSG:4326”.  Note that the projection of the map is usually det [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.units"></a>units</h3><div class=CBody><p>{String} The map units.   Possible values are ‘degrees’ (or ‘dd’), ‘m’, ‘ft’, ‘km’, ‘mi’, ‘inches’.   Normally taken from the projection.  Only required if both map and layers do not define a projection, or if they define a projection which does not define units</p></di [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.resolutions"></a>resolutions</h3><div class=CBody><p>{Array(Float)} A list of map resolutions (map units per pixel) in descending order.   If this is not set in the layer constructor, it will be set based on other resolution related properties (maxExtent, maxResolution, maxScale, etc.).</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Required if you are not displaying the whole world on a tile with the size specified in <a href="#OpenLayers.Map.tileSize" class=LProperty id=link87 onMouseOver="ShowTip(event, 'tt3', 'link87')" onMouseOut="HideTip('tt3')">tileSize</a>.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Required if you are not displaying the whole world on a tile with the size specified in <a href="#OpenLayers.Map.tileSize" class=LProperty id=link89 onMouseOver="ShowTip(event, 'tt3', 'link89')" onMouseOut="HideTip('tt3')">tileSize</a>.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minResolution"></a>minResolution</h3><div class=CBody><p>{Float}</p></div></div></div>
 
@@ -51,7 +51,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minScale"></a>minScale</h3><div class=CBody><p>{Float}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the map.   Defaults to the whole world in decimal degrees (-180, -90, 180, 90).   Specify a different extent in the map options if you are not using a geographic projection and displaying the who [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the map.  Default depends on projection; if this is one of those defined in OpenLayers.Projection.defaults (EPSG:4326 or web mercator), maxExtent will be set to the value defined there; else, defaults [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minExtent"></a>minExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The minimum extent for the map.   Defaults to null.</p></div></div></div>
 
@@ -61,17 +61,23 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.theme"></a>theme</h3><div class=CBody><p>{String} Relative path to a CSS file from which to load theme styles.  Specify null in the map options (e.g.  {theme: null}) if you want to get cascading style declarations - by putting links to stylesheets or style declarations directly in your page.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link90 onMouseOver="ShowTip(event, 'tt4', 'link90')" onMouseOut="HideTip('tt4')">OpenLayers.Projection</a>} Requires proj4js support for projections other than EPSG:4326 or EPSG:900913/EPSG:3857.  Projection used by several controls to display data to user.  If this  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link92 onMouseOver="ShowTip(event, 'tt4', 'link92')" onMouseOut="HideTip('tt4')">OpenLayers.Projection</a>} Requires proj4js support for projections other than EPSG:4326 or EPSG:900913/EPSG:3857.  Projection used by several controls to display data to user.  If this  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.fallThrough"></a>fallThrough</h3><div class=CBody><p>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  (#457) Default is to fall through.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.tileManager"></a>tileManager</h3><div class=CBody><p>{<OpenLayers.TileManager>|Object} By default, and if the build contains TileManager.js, the map will use the TileManager to queue image requests and to cache tile image elements.  To create a map without a TileManager configure the map with tileManager: null.  To create a TileManager with non-default options, supply the options instead or  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link91 onMouseOver="ShowTip(event, 'tt5', 'link91')" onMouseOut="HideTip('tt5')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for the  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.fallThrough"></a>fallThrough</h3><div class=CBody><p>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  (#457) Default is to swallow.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.autoUpdateSize"></a>autoUpdateSize</h3><div class=CBody><p>{Boolean} Should OpenLayers automatically update the size of the map when the resize event is fired.  Default is true.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link94 onMouseOver="ShowTip(event, 'tt5', 'link94')" onMouseOut="HideTip('tt5')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for the  [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panMethod"></a>panMethod</h3><div class=CBody><p>{Function} The Easing function to be used for tweening.   Default is OpenLayers.Easing.Expo.easeOut.  Setting this to ‘null’ turns off animated panning.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomMethod"></a>zoomMethod</h3><div class=CBody><p>{Function} The Easing function to be used for tweening.   Default is OpenLayers.Easing.Quad.easeOut.  Setting this to ‘null’ turns off animated zooming.</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.OpenLayers.Map"></a>OpenLayers.Map</h3><div class=CBody><p>Constructor for a new OpenLayers.Map instance.   There are two possible ways to call the map constructor.   See the examples below.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>div</td><td class=CDLDescription>{DOMElement|String}  The element or id of an e [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.OpenLayers.Map"></a>OpenLayers.Map</h3><div class=CBody><p>Constructor for a new OpenLayers.Map instance.   There are two possible ways to call the map constructor.   See the examples below.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>div</td><td class=CDLDescription>{DOMElement|String}  The element or id of an e [...]
 var map = new OpenLayers.Map("map1");
 
 // create a map with non-default options in an element with id "map2"
@@ -108,7 +114,7 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.setOptions"></a>setOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOptions: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getTileSize"></a>getTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileSize: function()</td></tr></table></blockquote><p>Get the tile size for the map</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link96 onMouseOver="ShowTip(event, 'tt2', 'link96')" onMouseOut="Hid [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getTileSize"></a>getTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileSize: function()</td></tr></table></blockquote><p>Get the tile size for the map</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link99 onMouseOver="ShowTip(event, 'tt2', 'link99')" onMouseOut="Hid [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getBy"></a>getBy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getBy: function(</td><td class="PParameter  prettyprint " nowrap>array,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property,</td></tr><tr><td></td><td class="PParameter  [...]
 
@@ -118,9 +124,9 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayersByClass"></a>getLayersByClass</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayersByClass: function(</td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsBy"></a>getControlsBy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsBy: function(</td><td class="PParameter  prettyprint " nowrap>property,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsBy"></a>getControlsBy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsBy: function(</td><td class="PParameter  prettyprint " nowrap>property,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsByClass"></a>getControlsByClass</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsByClass: function(</td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsByClass"></a>getControlsByClass</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsByClass: function(</td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayer"></a>getLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayer: function(</td><td class="PParameter  prettyprint " nowrap>id</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Get a lay [...]
 
@@ -140,43 +146,45 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.setBaseLayer"></a>setBaseLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBaseLayer: function(</td><td class="PParameter  prettyprint " nowrap>newBaseLayer</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControl"></a>addControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControl: function (</td><td class="PParameter  prettyprint " nowrap>control,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters   [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControl"></a>addControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControl: function (</td><td class="PParameter  prettyprint " nowrap>control,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters   [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControls"></a>addControls</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControls: function (</td><td class="PParameter  prettyprint " nowrap>controls,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixels</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControls"></a>addControls</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControls: function (</td><td class="PParameter  prettyprint " nowrap>controls,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixels</td><td class="PAfterPara [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControl"></a>getControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControl: function (</td><td class="PParameter  prettyprint " nowrap>id</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 c [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControl"></a>getControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControl: function (</td><td class="PParameter  prettyprint " nowrap>id</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 c [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removeControl"></a>removeControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeControl: function (</td><td class="PParameter  prettyprint " nowrap>control</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removeControl"></a>removeControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeControl: function (</td><td class="PParameter  prettyprint " nowrap>control</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addPopup"></a>addPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addPopup: function(</td><td class="PParameter  prettyprint " nowrap>popup,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>exclusive</td><td class="PAfterParameters  pr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addPopup"></a>addPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addPopup: function(</td><td class="PParameter  prettyprint " nowrap>popup,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>exclusive</td><td class="PAfterParameters  pr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removePopup"></a>removePopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removePopup: function(</td><td class="PParameter  prettyprint " nowrap>popup</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removePopup"></a>removePopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removePopup: function(</td><td class="PParameter  prettyprint " nowrap>popup</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link107 onMouseOver="ShowTip(event, 'tt2', 'link107')" onMouseOut="HideTip('tt2')">OpenLayers.Size</a>} An <a href= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link110 onMouseOver="ShowTip(event, 'tt2', 'link110')" onMouseOut="HideTip('tt2')">OpenLayers.Size</a>} An <a href= [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.updateSize"></a>updateSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">updateSize: function()</td></tr></table></blockquote><p>This function should be called by any external code which dynamically changes the size of the map div (because mozilla wont let us catch the “onresize” for an element)</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCenter"></a>getCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenter: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link109 onMouseOver="ShowTip(event, 'tt35', 'link109')" onMouseOut="HideTip('tt35')">OpenLayers.LonLat</a [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCenter"></a>getCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenter: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link112 onMouseOver="ShowTip(event, 'tt35', 'link112')" onMouseOut="HideTip('tt35')">OpenLayers.LonLat</a [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoom"></a>getZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getZoom: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Integer}</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.pan"></a>pan</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>pan: function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy,</td></tr><tr><td></td><td class="PParameter  prettyprint "  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panTo"></a>panTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>panTo: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Allows user to [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panTo"></a>panTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>panTo: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Allows user to [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.setCenter"></a>setCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setCenter: function(</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoom,</td></tr><tr><td></td><td class="PP [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMinZoom"></a>getMinZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMinZoom: function()</td></tr></table></blockquote><p>Returns the minimum zoom level for the current map view.  If the base layer is configured with <wrapDateLine> set to true, this will be the first zoom level that shows no more than one world wi [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getProjection"></a>getProjection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getProjection: function()</td></tr></table></blockquote><p>This method returns a string representing the projection.  In the case of projection support, this will be the srsCode which is loaded -- otherwise it will simply be the string value that wa [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getProjectionObject"></a>getProjectionObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getProjectionObject: function()</td></tr></table></blockquote><p>Returns the projection obect from the baselayer.</p><h4 class=CHeading>Returns</h4><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link111 onMouseOver="Sh [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getProjectionObject"></a>getProjectionObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getProjectionObject: function()</td></tr></table></blockquote><p>Returns the projection obect from the baselayer.</p><h4 class=CHeading>Returns</h4><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link115 onMouseOver="Sh [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMaxResolution"></a>getMaxResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMaxResolution: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} The Map’s Maximum Resolution</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMaxExtent: function (</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMaxExtent: function (</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getNumZoomLevels"></a>getNumZoomLevels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getNumZoomLevels: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Integer} The total number of zoom levels that can be displayed by the current baseLayer.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link113 onMouseOver="ShowTip(event, 'tt46', 'link113')" onMouseOut="HideTip('tt46')">OpenLayers.Bounds</a [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link117 onMouseOver="ShowTip(event, 'tt47', 'link117')" onMouseOut="HideTip('tt47')">OpenLayers.Bounds</a [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getResolution"></a>getResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getResolution: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The current resolution of the map.  If no baselayer is set, returns null.</p></div></div></div>
 
@@ -184,13 +192,13 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getScale"></a>getScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getScale: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The current scale denominator of the map.  If no baselayer is set, returns null.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function (</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cla [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function (</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cla [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getResolutionForZoom"></a>getResolutionForZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getResolutionForZoom: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomForResolution"></a>getZoomForResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForResolution: function(</td><td class="PParameter  prettyprint " nowrap>resolution,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>clos [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomTo"></a>zoomTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomTo: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Zoom to a spe [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomTo"></a>zoomTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomTo: function(</td><td class="PParameter  prettyprint " nowrap>zoom,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>xy</td><td class="PAfterParameters  prettyprint "now [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomIn"></a>zoomIn</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">zoomIn: function()</td></tr></table></blockquote></div></div></div>
 
@@ -202,17 +210,17 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomToScale"></a>zoomToScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomToScale: function(</td><td class="PParameter  prettyprint " nowrap>scale,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td class="PAfterParamet [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromPixel"></a>getLonLatFromPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromPixel: function (</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromPixel"></a>getLonLatFromPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromPixel: function (</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getPixelFromLonLat"></a>getPixelFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPixelFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getPixelFromLonLat"></a>getPixelFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPixelFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLayerPx"></a>getViewPortPxFromLayerPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLayerPx:function(</td><td class="PParameter  prettyprint " nowrap>layerPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLayerPx"></a>getViewPortPxFromLayerPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLayerPx:function(</td><td class="PParameter  prettyprint " nowrap>layerPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromViewPortPx"></a>getLayerPxFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromViewPortPx:function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromViewPortPx"></a>getLayerPxFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromViewPortPx:function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromLonLat"></a>getLayerPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromLonLat"></a>getLayerPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Constants"></a>Constants</h3></div></div>
 
@@ -226,15 +234,15 @@ var map = new OpenLayers.Map({
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt3"><div class=CProperty>{OpenLayers.Size} Set in the map options to override the default tile size for this map.</div></div><div class=CToolTip id="tt4"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></di [...]
+<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt3"><div class=CProperty>{OpenLayers.Size} Set in the map options to override the default tile size for this map.</div></div><div class=CToolTip id="tt4"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></di [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Marker-js.html b/doc/apidocs/files/OpenLayers/Marker-js.html
index 5f15f16..6a96738 100644
--- a/doc/apidocs/files/OpenLayers/Marker-js.html
+++ b/doc/apidocs/files/OpenLayers/Marker-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Marker - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -36,10 +36,10 @@ markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(0,0),icon.clone())
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([21, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([24, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Marker/Box-js.html b/doc/apidocs/files/OpenLayers/Marker/Box-js.html
index 16946b4..41aecce 100644
--- a/doc/apidocs/files/OpenLayers/Marker/Box-js.html
+++ b/doc/apidocs/files/OpenLayers/Marker/Box-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Marker.Box - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([21, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([24, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Popup-js.html b/doc/apidocs/files/OpenLayers/Popup-js.html
index 6c6efaa..ecd4cef 100644
--- a/doc/apidocs/files/OpenLayers/Popup-js.html
+++ b/doc/apidocs/files/OpenLayers/Popup-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ map.addPopup(popup);</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Popup/Anchored-js.html b/doc/apidocs/files/OpenLayers/Popup/Anchored-js.html
index d181884..8e51b77 100644
--- a/doc/apidocs/files/OpenLayers/Popup/Anchored-js.html
+++ b/doc/apidocs/files/OpenLayers/Popup/Anchored-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.Anchored - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Popup/AnchoredBubble-js.html b/doc/apidocs/files/OpenLayers/Popup/AnchoredBubble-js.html
deleted file mode 100644
index 3722d84..0000000
--- a/doc/apidocs/files/OpenLayers/Popup/AnchoredBubble-js.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.AnchoredBubble - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.52 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h1><div class=CBody><p>This class is <b>deprecated</b>.  Use {<a href="Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>} and round corners using CSS3’s border-radius property.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Anchored-js.html#OpenLayers.Popup.An [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constructor"></a>Constructor</h3></div></div>
-
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescription>{<a href="../BaseTypes/LonLat-js.html#OpenLayers.LonLat"  [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Functions"></a>Functions</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setSize"></a>setSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setSize:function(</td><td class="PParameter  prettyprint " nowrap>contentSize</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setBackgroundColor"></a>setBackgroundColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBackgroundColor:function(</td><td class="PParameter  prettyprint " nowrap>color</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity:function(</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constants"></a>Constants</h3></div></div>
-
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.CORNER_SIZE"></a>CORNER_SIZE</h3><div class=CBody><p>{Integer} 5.  Border space for the RICO corners.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setSize:function(</td><td class="PParameter  prettyprint " nowrap>contentSize</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table  [...]
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Popup/Framed-js.html b/doc/apidocs/files/OpenLayers/Popup/Framed-js.html
index 325011b..aa11c45 100644
--- a/doc/apidocs/files/OpenLayers/Popup/Framed-js.html
+++ b/doc/apidocs/files/OpenLayers/Popup/Framed-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.Framed - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Popup/FramedCloud-js.html b/doc/apidocs/files/OpenLayers/Popup/FramedCloud-js.html
index f78387d..66a4e2d 100644
--- a/doc/apidocs/files/OpenLayers/Popup/FramedCloud-js.html
+++ b/doc/apidocs/files/OpenLayers/Popup/FramedCloud-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.FramedCloud - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Projection-js.html b/doc/apidocs/files/OpenLayers/Projection-js.html
index 66646a8..5b48d2b 100644
--- a/doc/apidocs/files/OpenLayers/Projection-js.html
+++ b/doc/apidocs/files/OpenLayers/Projection-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Projection - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -40,10 +40,10 @@ OpenLayers.Projection.addTransform("EPSG:900913", "EPSG:3857&quot
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol-js.html b/doc/apidocs/files/OpenLayers/Protocol-js.html
index d1c5b59..8a4bf3f 100644
--- a/doc/apidocs/files/OpenLayers/Protocol-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/CSW-js.html b/doc/apidocs/files/OpenLayers/Protocol/CSW-js.html
index 8bdb69f..a8ce265 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/CSW-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/CSW-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.CSW - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html b/doc/apidocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html
index 60351ae..e664f75 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.CSW.v2_0_2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/HTTP-js.html b/doc/apidocs/files/OpenLayers/Protocol/HTTP-js.html
index d3fa1f6..75997cf 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/HTTP-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/HTTP-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.HTTP - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/SOS-js.html b/doc/apidocs/files/OpenLayers/Protocol/SOS-js.html
index 5eae458..f404759 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/SOS-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/SOS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.SOS.DEFAULTS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html
index 284d5f3..204f38d 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.SOS.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/Script-js.html b/doc/apidocs/files/OpenLayers/Protocol/Script-js.html
index 8055f1a..aa68a1c 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/Script-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/Script-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.Script - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/WFS-js.html b/doc/apidocs/files/OpenLayers/Protocol/WFS-js.html
index b1c6bdf..e1f775c 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/WFS-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/WFS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/WFS/v1-js.html b/doc/apidocs/files/OpenLayers/Protocol/WFS/v1-js.html
index 84620f0..e8c40ca 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/WFS/v1-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/WFS/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();p [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html b/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html
index a832e92..342ec88 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html b/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html
index 1f00dc9..8cc8c5f 100644
--- a/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html
+++ b/doc/apidocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Renderer-js.html b/doc/apidocs/files/OpenLayers/Renderer-js.html
index 0f083f8..ff88e3a 100644
--- a/doc/apidocs/files/OpenLayers/Renderer-js.html
+++ b/doc/apidocs/files/OpenLayers/Renderer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Renderer/Canvas-js.html b/doc/apidocs/files/OpenLayers/Renderer/Canvas-js.html
index 75d4981..dc9498c 100644
--- a/doc/apidocs/files/OpenLayers/Renderer/Canvas-js.html
+++ b/doc/apidocs/files/OpenLayers/Renderer/Canvas-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer.Canvas - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Renderer/Elements-js.html b/doc/apidocs/files/OpenLayers/Renderer/Elements-js.html
index f70fbb0..0c516cb 100644
--- a/doc/apidocs/files/OpenLayers/Renderer/Elements-js.html
+++ b/doc/apidocs/files/OpenLayers/Renderer/Elements-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.ElementsIndexer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Renderer/SVG-js.html b/doc/apidocs/files/OpenLayers/Renderer/SVG-js.html
index 4f7d96c..e069b4e 100644
--- a/doc/apidocs/files/OpenLayers/Renderer/SVG-js.html
+++ b/doc/apidocs/files/OpenLayers/Renderer/SVG-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer.SVG - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Renderer/VML-js.html b/doc/apidocs/files/OpenLayers/Renderer/VML-js.html
index 7127c5c..6e210c0 100644
--- a/doc/apidocs/files/OpenLayers/Renderer/VML-js.html
+++ b/doc/apidocs/files/OpenLayers/Renderer/VML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer.VML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Request-js.html b/doc/apidocs/files/OpenLayers/Request-js.html
index eb9541d..c6bf85b 100644
--- a/doc/apidocs/files/OpenLayers/Request-js.html
+++ b/doc/apidocs/files/OpenLayers/Request-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Request - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([27, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([30, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Request/XMLHttpRequest-js.html b/doc/apidocs/files/OpenLayers/Request/XMLHttpRequest-js.html
index ebe48d8..231b4f8 100644
--- a/doc/apidocs/files/OpenLayers/Request/XMLHttpRequest-js.html
+++ b/doc/apidocs/files/OpenLayers/Request/XMLHttpRequest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Request.XMLHttpRequest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([27, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([30, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Rule-js.html b/doc/apidocs/files/OpenLayers/Rule-js.html
index d383b1c..4f975ef 100644
--- a/doc/apidocs/files/OpenLayers/Rule-js.html
+++ b/doc/apidocs/files/OpenLayers/Rule-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Rule - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/SingleFile-js.html b/doc/apidocs/files/OpenLayers/SingleFile-js.html
index ed54d62..47ac416 100644
--- a/doc/apidocs/files/OpenLayers/SingleFile-js.html
+++ b/doc/apidocs/files/OpenLayers/SingleFile-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/SingleFile.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLo [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/SingleFile.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLo [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Spherical-js.html b/doc/apidocs/files/OpenLayers/Spherical-js.html
index cedd7fd..8b59daf 100644
--- a/doc/apidocs/files/OpenLayers/Spherical-js.html
+++ b/doc/apidocs/files/OpenLayers/Spherical-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Spherical - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy-js.html b/doc/apidocs/files/OpenLayers/Strategy-js.html
index e0a3263..8d6e792 100644
--- a/doc/apidocs/files/OpenLayers/Strategy-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/BBOX-js.html b/doc/apidocs/files/OpenLayers/Strategy/BBOX-js.html
index e5edc9e..b35b6b6 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/BBOX-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/BBOX-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.BBOX - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/Cluster-js.html b/doc/apidocs/files/OpenLayers/Strategy/Cluster-js.html
index c5a2952..ead3c63 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/Cluster-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/Cluster-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Cluster - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/Filter-js.html b/doc/apidocs/files/OpenLayers/Strategy/Filter-js.html
index 52a6674..b9d844c 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/Filter-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/Filter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Filter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/Fixed-js.html b/doc/apidocs/files/OpenLayers/Strategy/Fixed-js.html
index cbac50d..3e9dc53 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/Fixed-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/Fixed-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Fixed - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/Paging-js.html b/doc/apidocs/files/OpenLayers/Strategy/Paging-js.html
index 2cc4ec6..e9bd352 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/Paging-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/Paging-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Paging - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/Refresh-js.html b/doc/apidocs/files/OpenLayers/Strategy/Refresh-js.html
index b7885f1..6c923b2 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/Refresh-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/Refresh-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Refresh - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Strategy/Save-js.html b/doc/apidocs/files/OpenLayers/Strategy/Save-js.html
index 3850246..4f2318d 100644
--- a/doc/apidocs/files/OpenLayers/Strategy/Save-js.html
+++ b/doc/apidocs/files/OpenLayers/Strategy/Save-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Save - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Style-js.html b/doc/apidocs/files/OpenLayers/Style-js.html
index 6c4268a..3ce61f9 100644
--- a/doc/apidocs/files/OpenLayers/Style-js.html
+++ b/doc/apidocs/files/OpenLayers/Style-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Style - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Style"></a>OpenLayers.<wbr>Style</h1><div class=CBody><p>This class represents a UserStyle obtained from a SLD, containing styling rules.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Style" >OpenLayers.<wbr>Style</a></td><td  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Style"></a>OpenLayers.<wbr>Style</h1><div class=CBody><p>This class represents a UserStyle obtained from a SLD, containing styling rules.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Style" >OpenLayers.<wbr>Style</a></td><td  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Style.Properties"></a>Properties</h3></div></div>
 
@@ -21,6 +21,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Style.isDefault"></a>isDefault</h3><div class=CBody><p>{Boolean}</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Style.context"></a>context</h3><div class=CBody><p>{Object} An optional object with properties that symbolizers’ property values should be evaluated against.  If no context is specified, feature.attributes will be used</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Style.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Style.OpenLayers.Style"></a>OpenLayers.<wbr>Style</h3><div class=CBody><p>Creates a UserStyle.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>style</td><td class=CDLDescription>{Object} Optional hash of style properties that will be used as default style for this style object.  This style applies if no rules are specified.&n [...]
@@ -45,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Style2-js.html b/doc/apidocs/files/OpenLayers/Style2-js.html
index 9640ee7..316b287 100644
--- a/doc/apidocs/files/OpenLayers/Style2-js.html
+++ b/doc/apidocs/files/OpenLayers/Style2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Style2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/StyleMap-js.html b/doc/apidocs/files/OpenLayers/StyleMap-js.html
index 24cb551..1dc42f9 100644
--- a/doc/apidocs/files/OpenLayers/StyleMap-js.html
+++ b/doc/apidocs/files/OpenLayers/StyleMap-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.StyleMap - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Symbolizer-js.html b/doc/apidocs/files/OpenLayers/Symbolizer-js.html
index ec8bc7e..a3bbadd 100644
--- a/doc/apidocs/files/OpenLayers/Symbolizer-js.html
+++ b/doc/apidocs/files/OpenLayers/Symbolizer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Symbolizer/Line-js.html b/doc/apidocs/files/OpenLayers/Symbolizer/Line-js.html
index 68cd58f..cea2a35 100644
--- a/doc/apidocs/files/OpenLayers/Symbolizer/Line-js.html
+++ b/doc/apidocs/files/OpenLayers/Symbolizer/Line-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Line - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Symbolizer/Point-js.html b/doc/apidocs/files/OpenLayers/Symbolizer/Point-js.html
index e60c699..9d758cf 100644
--- a/doc/apidocs/files/OpenLayers/Symbolizer/Point-js.html
+++ b/doc/apidocs/files/OpenLayers/Symbolizer/Point-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Point - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Symbolizer/Polygon-js.html b/doc/apidocs/files/OpenLayers/Symbolizer/Polygon-js.html
index b4d1ae7..2a13b15 100644
--- a/doc/apidocs/files/OpenLayers/Symbolizer/Polygon-js.html
+++ b/doc/apidocs/files/OpenLayers/Symbolizer/Polygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Polygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Symbolizer/Raster-js.html b/doc/apidocs/files/OpenLayers/Symbolizer/Raster-js.html
index ccf653d..3137806 100644
--- a/doc/apidocs/files/OpenLayers/Symbolizer/Raster-js.html
+++ b/doc/apidocs/files/OpenLayers/Symbolizer/Raster-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Raster - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Symbolizer/Text-js.html b/doc/apidocs/files/OpenLayers/Symbolizer/Text-js.html
index d0e28e0..c84cb60 100644
--- a/doc/apidocs/files/OpenLayers/Symbolizer/Text-js.html
+++ b/doc/apidocs/files/OpenLayers/Symbolizer/Text-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Text - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Tile-js.html b/doc/apidocs/files/OpenLayers/Tile-js.html
index 83cad9e..b27f35f 100644
--- a/doc/apidocs/files/OpenLayers/Tile-js.html
+++ b/doc/apidocs/files/OpenLayers/Tile-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Tile/Image-js.html b/doc/apidocs/files/OpenLayers/Tile/Image-js.html
index 1664bde..8034f4e 100644
--- a/doc/apidocs/files/OpenLayers/Tile/Image-js.html
+++ b/doc/apidocs/files/OpenLayers/Tile/Image-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile.Image - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,44 +11,52 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h1><div class=CBody><p>Instances of OpenLayers.Tile.Image are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt1', 'link4')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a>  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h1><div class=CBody><p>Instances of OpenLayers.Tile.Image are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a>  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Properties"></a>Properties</h3></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} An events object that handles all events on the tile.</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">tile.events.register(type, obj, listener);</pre></blockquote><h4 class=CHeading>Supported  [...]
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.url"></a>url</h3><div class=CBody><p>{String} The URL of the image being requested.  No default.  Filled in by layer.getURL() function.  May be modified by loadstart listeners.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.maxGetUrlLength"></a>maxGetUrlLength</h3><div class=CBody><p>{Number} If set, requests that would result in GET urls with more characters than the number provided will be made using form-encoded HTTP POST.  It is good practice to avoid urls that are longer than 2048 characters.</p><h4 class=CHeading>Caution</h4><p>Older versions of Gecko based browsers (e.g.  Firefox < 3.5) and most Oper [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.crossOriginKeyword"></a>crossOriginKeyword</h3><div class=CBody><p>The value of the crossorigin keyword to use when loading images.  This is only relevant when using <a href="#OpenLayers.Tile.Image.getCanvasContext" class=LFunction id=link5 onMouseOver="ShowTip(event, 'tt3', 'link5')" onMouseOut="HideTip('tt3')">getCanvasContext</a> for tiles from remote origins and should be set to either &lsqu [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.crossOriginKeyword"></a>crossOriginKeyword</h3><div class=CBody><p>The value of the crossorigin keyword to use when loading images.  This is only relevant when using <a href="#OpenLayers.Tile.Image.getCanvasContext" class=LFunction id=link9 onMouseOver="ShowTip(event, 'tt4', 'link9')" onMouseOut="HideTip('tt4')">getCanvasContext</a> for tiles from remote origins and should be set to either &lsqu [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionLi [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Functions"></a>Functions</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>nullify references to prevent circular references and memory leaks</p></div></div></div>
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.setImage"></a>setImage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setImage: function(</td><td class="PParameter  prettyprint " nowrap>img</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>S [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.getCanvasContext"></a>getCanvasContext</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCanvasContext: function()</td></tr></table></blockquote><p>Returns a canvas context associated with the tile image (with the image drawn on it).  Returns undefined if the browser does not support canvas, if the tile has no image or i [...]
 if (context) {
     var data = context.canvas.toDataURL('image/jpeg');
 }</pre></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean}</p></div></div></div>
 
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Constants"></a>Constants</h3></div></div>
+
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.OpenLayers.Tile.Image.IMAGE"></a>OpenLayers.<wbr>Tile.<wbr>Image.<wbr>IMAGE</h3><div class=CBody><p>{HTMLImageElement} The image for a tile.</p></div></div></div>
+
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>nullify references to prevent circular references and memory leaks</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 ce [...]
+<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>nullify references to prevent circular references and memory leaks</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 ce [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Tile/Image/IFrame-js.html b/doc/apidocs/files/OpenLayers/Tile/Image/IFrame-js.html
index 75d5d8c..6ba5322 100644
--- a/doc/apidocs/files/OpenLayers/Tile/Image/IFrame-js.html
+++ b/doc/apidocs/files/OpenLayers/Tile/Image/IFrame-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile.Image.IFrame - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Tile/UTFGrid-js.html b/doc/apidocs/files/OpenLayers/Tile/UTFGrid-js.html
index 7f80256..31e00b1 100644
--- a/doc/apidocs/files/OpenLayers/Tile/UTFGrid-js.html
+++ b/doc/apidocs/files/OpenLayers/Tile/UTFGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile.UTFGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h1><div class=CBody><p>Instances of OpenLayers.Tile.UTFGrid are used to manage UTFGrids.  This is an unusual tile type in that it doesn’t have a rendered image; only a ‘hit grid’ that can be used to look up feature attributes.</p><p>See the <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConst [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h1><div class=CBody><p>Instances of OpenLayers.Tile.UTFGrid are used to manage UTFGrids.  This is an unusual tile type in that it doesn’t have a rendered image; only a ‘hit grid’ that can be used to look up feature attributes.</p><p>See the <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConst [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConstructor id=link4 onMouseOver="ShowTip(event, 'tt1', 'link4')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.UTFGrid</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDes [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConstructor id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.UTFGrid</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDes [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.Functions"></a>Functions</h3></div></div>
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt3"><div class=CClass>This class represents a screen coordinate, in x and y coordinates</div></div><div class=CToolTip id="t [...]
+<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt3"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relativel [...]
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/TileManager-js.html b/doc/apidocs/files/OpenLayers/TileManager-js.html
new file mode 100644
index 0000000..411caea
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/TileManager-js.html
@@ -0,0 +1,55 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.TileManager - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langu [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.TileManager"></a>OpenLayers.<wbr>TileManager</h1><div class=CBody><p>Provides queueing of image requests and caching of image elements.</p><p>Queueing avoids unnecessary image requests while changing zoom levels quickly, and helps improve dragging performance on mobile devices that show a lag in dragging when loading of new images starts.  <a href="#OpenLayers.TileManager.zoomDela [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.cacheSize"></a>cacheSize</h3><div class=CBody><p>{Number} Number of image elements to keep referenced in this instance’s cache for fast reuse.  Default is 256.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.tilesPerFrame"></a>tilesPerFrame</h3><div class=CBody><p>{Number} Number of queued tiles to load per frame (see <a href="#OpenLayers.TileManager.frameDelay" class=LProperty id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">frameDelay</a>).  Default is 2.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.frameDelay"></a>frameDelay</h3><div class=CBody><p>{Number} Delay between tile loading frames (see <a href="#OpenLayers.TileManager.tilesPerFrame" class=LProperty id=link7 onMouseOver="ShowTip(event, 'tt2', 'link7')" onMouseOut="HideTip('tt2')">tilesPerFrame</a>) in milliseconds.  Default is 16.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.moveDelay"></a>moveDelay</h3><div class=CBody><p>{Number} Delay in milliseconds after a map’s move event before loading tiles.  Default is 100.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.zoomDelay"></a>zoomDelay</h3><div class=CBody><p>{Number} Delay in milliseconds after a map’s zoomend event before loading tiles.  Default is 200.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.OpenLayers.TileManager"></a>OpenLayers.<wbr>TileManager</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.TileManager.OpenLayers.TileManager" class=LConstructor id=link8 onMouseOver="ShowTip(event, 'tt3', 'link8')" onMouseOut="HideTip('tt3')">OpenLayers.TileManager</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionLis [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CProperty>{Number} Delay between tile loading frames (see tilesPerFrame) in milliseconds. </div></div><div class=CToolTip id="tt2"><div class=CProperty>{Number} Number of queued tiles to load per frame (see frameDelay). </div></div><div class=CToolTip id="tt3"><div class=CConstructor>Constructor for a new OpenLayers.TileManager instance.</div></div><div class=CToolTip id="tt4"><div class=CProperty>{Number} Delay in milliseconds after a map’s  [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/Tween-js.html b/doc/apidocs/files/OpenLayers/Tween-js.html
index 0069b3f..f5a4a77 100644
--- a/doc/apidocs/files/OpenLayers/Tween-js.html
+++ b/doc/apidocs/files/OpenLayers/Tween-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tween - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tween"></a>OpenLayers.<wbr>Tween</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Tween" >OpenLayers.<wbr>Tween</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Ope [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tween"></a>OpenLayers.<wbr>Tween</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Tween" >OpenLayers.<wbr>Tween</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Ope [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.Properties"></a>Properties</h3></div></div>
 
@@ -25,13 +25,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.callbacks"></a>callbacks</h3><div class=CBody><p>{Object} An object with start, eachStep and done properties whose values are functions to be call during the animation.  They are passed the current computed value as argument.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.minFrameRate"></a>minFrameRate</h3><div class=CBody><p>{Number} The minimum framerate for animations in frames per second.  After each step, the time spent in the animation is compared to the calculated time at this frame rate.  If the animation runs longer than the calculated time, the next step is skipped.  Default is 30.</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.OpenLayers.Tween"></a>OpenLayers.<wbr>Tween</h3><div class=CBody><p>Creates a Tween.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>easing</td><td class=CDLDescription>{<OpenLayers.Easing>(Function)} easing function method to use</td></tr></table></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>start: function(</td><td class="PParameter  prettyprint " nowrap>begin,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>finish,</td></tr><tr><td></td><td class="PParameter  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>start: function(</td><td class="PParameter  prettyprint " nowrap>begin,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>finish,</td></tr><tr><td></td><td class="PParameter  [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.stop"></a>stop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">stop: function()</td></tr></table></blockquote><p>Stops the Tween, and calls the done callback Doesn’t do anything if animation is already finished</p></div></div></div>
 
@@ -49,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Util-js.html b/doc/apidocs/files/OpenLayers/Util-js.html
index 927140a..68192aa 100644
--- a/doc/apidocs/files/OpenLayers/Util-js.html
+++ b/doc/apidocs/files/OpenLayers/Util-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Util - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/apidocs/files/OpenLayers/Util/vendorPrefix-js.html b/doc/apidocs/files/OpenLayers/Util/vendorPrefix-js.html
new file mode 100644
index 0000000..e1c5671
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/Util/vendorPrefix-js.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Util.vendorPrefix - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Util.vendorPrefix"></a>OpenLayers.<wbr>Util.<wbr>vendorPrefix</h1><div class=CBody><p>A collection of utility functions to detect vendor prefixed features</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Util.vendorPrefix" >OpenL [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.css"></a>css</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function css(</td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Detec [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.js"></a>js</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function js(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprin [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.style"></a>style</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function style(</td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function css(</td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Detect which property is used for a CSS property</div></div><div class=CToolTip id="tt2" [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/WPSClient-js.html b/doc/apidocs/files/OpenLayers/WPSClient-js.html
new file mode 100644
index 0000000..f22c419
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/WPSClient-js.html
@@ -0,0 +1,56 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.WPSClient - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script languag [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.WPSClient"></a>OpenLayers.<wbr>WPSClient</h1><div class=CBody><p>High level API for interaction with Web Processing Services (WPS).  An <a href="#OpenLayers.WPSClient.OpenLayers.WPSClient" class=LConstructor >OpenLayers.WPSClient</a> instance is used to create <a href="WPSProcess-js.html#OpenLayers.WPSProcess" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt3', 'link4')" onMo [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.OpenLayers.WPSClient"></a>OpenLayers.<wbr>WPSClient</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Object whose properties will be set on the instance.</td></tr></table><h4 class=CHeading>Avaliable options</h4><table border=0 cellspacing=0 cellpadding=0 cla [...]
+    local: '/geoserver/wps'
+}, {
+    opengeo: {
+        url: 'http://demo.opengeo.org/geoserver/wps',
+        version: '1.0.0'
+    }
+}</pre></blockquote><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lazy</td><td class=CDLDescription>{Boolean} Optional.  Set to true if DescribeProcess should not be requested until a process is fully configured.  Default is false.</td></tr></table></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.execute"></a>execute</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>execute: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>S [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.getProcess"></a>getProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getProcess: function(</td><td class="PParameter  prettyprint " nowrap>serverID,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>processID</td><td class="PAfte [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>execute: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Shortcut to execute a process with a single function call. </div></div><div class=CT [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/OpenLayers/WPSProcess-js.html b/doc/apidocs/files/OpenLayers/WPSProcess-js.html
new file mode 100644
index 0000000..5eada37
--- /dev/null
+++ b/doc/apidocs/files/OpenLayers/WPSProcess-js.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.WPSProcess - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.WPSProcess"></a>OpenLayers.<wbr>WPSProcess</h1><div class=CBody><p>Representation of a WPS process.  Usually instances of <a href="#OpenLayers.WPSProcess.OpenLayers.WPSProcess" class=LConstructor >OpenLayers.WPSProcess</a> are created by calling ‘getProcess’ on an <a href="WPSClient-js.html#OpenLayers.WPSClient" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt4',  [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.localWPS"></a>localWPS</h3><div class=CBody><p>{String} Service endpoint for locally chained WPS processes.  Default is ‘<a href="http://geoserver/wps" class=LURL target=_top>http://geoserver/wps</a>’.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.OpenLayers.WPSProcess"></a>OpenLayers.<wbr>WPSProcess</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Object whose properties will be set on the instance.</td></tr></table><h4 class=CHeading>Avaliable options</h4><table border=0 cellspacing=0 cellpadding=0  [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.configure"></a>configure</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>configure: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.execute"></a>execute</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>execute: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.output"></a>output</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>output: function(</td><td class="PParameter  prettyprint " nowrap>identifier</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+intersect.configure({
+    // ...
+});
+buffer = client.getProcess('opengeo', 'JTS:buffer');
+buffer.execute({
+    inputs: {
+        geom: intersect.output('result'), // <-- here we're chaining
+        distance: 1
+    },
+    // ...
+});</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>identifier</td><td class=CDLDescription>{String} Identifier of the output that we’re chaining.  If not provided, the first output will be used.</td></tr></table></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink"></a>OpenLayers.<wbr>WPSProcess.<wbr>ChainLink</h2><div class=CBody><p>Type for chaining processes.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.WPSProcess.ChainLink.Constructor" >Constructor</a></td><td class=SDescription></td></tr [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.OpenLayers.WPSProcess.ChainLink"></a>OpenLayers.<wbr>WPSProcess.<wbr>ChainLink</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Properties to set on the instance.</td></tr></table></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>configure: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Configure the process, but do not execute it. </div></div><div class=CToolTip id=" [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/files/deprecated-js.html b/doc/apidocs/files/deprecated-js.html
index 182f4d7..d27c8cf 100644
--- a/doc/apidocs/files/deprecated-js.html
+++ b/doc/apidocs/files/deprecated-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/deprecated.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/deprecated.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="deprecated.js"></a>deprecated.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#deprecated.js" >deprecated.js</a></td><td class=SDescription></td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Deprecated" >Deprecated</ [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="deprecated.js"></a>deprecated.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#deprecated.js" >deprecated.js</a></td><td class=SDescription></td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Deprecated" >Deprecated</ [...]
 
 <div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Deprecated"></a>Deprecated</h3><div class=CBody><p>The deprecated.js script includes all methods, properties, and constructors that are not supported as part of the long-term API.   If you use any of these, you have to explicitly include this script in your application.</p><h4 class=CHeading>For example</h4><blockquote><pre class="prettyprint"><script src="deprecated.js" type="text/javascript"&g [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Class"></a>OpenLayers.<wbr>Class</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Class.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Class.OpenL [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Class"></a>OpenLayers.<wbr>Class</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Class.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Class.OpenL [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Class.Functions"></a>Functions</h3></div></div>
 
@@ -25,11 +25,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Util"></a>OpenLayers.Util</h2><div class=CBody></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax"></a>OpenLayers.Ajax</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Ajax.OpenLayers.loa [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax"></a>OpenLayers.Ajax</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Ajax.OpenLayers.loa [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.OpenLayers.loadURL"></a>OpenLayers.<wbr>loadURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.loadURL = function(</td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>params,</t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.OpenLayers.loadURL"></a>OpenLayers.<wbr>loadURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.loadURL = function(</td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>params,</t [...]
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Responders"></a>OpenLayers.<wbr>Ajax.<wbr>Responders</h2><div class=CBody><p>{Object}</p></div></div></div>
 
@@ -39,7 +39,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Base.OpenLayers.Ajax.Base"></a>OpenLayers.<wbr>Ajax.Base</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object}</td></tr></table></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Request"></a>OpenLayers.<wbr>Ajax.<wbr>Request</h2><div class=CBody><p><b>Deprecated</b>.   Use <a href="OpenLayers/Request-js.html#OpenLayers.Request" class=LClass id=link70 onMouseOver="ShowTip(event, 'tt67', 'link70')" onMouseOut="HideTip('tt67')">OpenLayers.Request</a> method instead.</p><h4 class=CHeading>Inherit</h4><ul><li><a href="#OpenLayers.Ajax.Base" class=LClass >OpenLayers.Ajax.Base</a></li> [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Request"></a>OpenLayers.<wbr>Ajax.<wbr>Request</h2><div class=CBody><p><b>Deprecated</b>.   Use <a href="OpenLayers/Request-js.html#OpenLayers.Request" class=LClass id=link73 onMouseOver="ShowTip(event, 'tt70', 'link73')" onMouseOut="HideTip('tt70')">OpenLayers.Request</a> method instead.</p><h4 class=CHeading>Inherit</h4><ul><li><a href="#OpenLayers.Ajax.Base" class=LClass >OpenLayers.Ajax.Base</a></li> [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.Constructor"></a>Constructor</h3></div></div>
 
@@ -51,7 +51,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Response.OpenLayers.Ajax.Response"></a>OpenLayers.<wbr>Ajax.<wbr>Response</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>request</td><td class=CDLDescription>{Object}</td></tr></table></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Element"></a>OpenLayers.<wbr>Element</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Element.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Eleme [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Element"></a>OpenLayers.<wbr>Element</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Element.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Eleme [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Element.Functions"></a>Functions</h3></div></div>
 
@@ -75,7 +75,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile"></a>OpenLayers.Tile</h2><div class=CBody></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseDefaults"></a>OpenLayers.<wbr>Control.<wbr>MouseDefaults</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation" class=LClass id=link75 onMouseOver="ShowTip(event, 'tt68', 'link75')" onMouseOut="HideTip('tt68')">OpenLayers.Control.Navigation</a> instead!!! [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseDefaults"></a>OpenLayers.<wbr>Control.<wbr>MouseDefaults</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation" class=LClass id=link78 onMouseOver="ShowTip(event, 'tt71', 'link78')" onMouseOut="HideTip('tt71')">OpenLayers.Control.Navigation</a> instead!!! [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.Constructor"></a>Constructor</h3></div></div>
 
@@ -85,7 +85,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/NavToolbar-js.html#OpenLayers.Control.NavToolbar" class=LClass id=link78 onMouseOver="ShowTip(event, 'tt70', 'link78')" onMouseOut="HideTip('tt70')">OpenLayers.Control.NavToolbar</a> instead!!!</ [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/NavToolbar-js.html#OpenLayers.Control.NavToolbar" class=LClass id=link81 onMouseOver="ShowTip(event, 'tt73', 'link81')" onMouseOut="HideTip('tt73')">OpenLayers.Control.NavToolbar</a> instead!!!</ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.Properties"></a>Properties</h3></div></div>
 
@@ -93,7 +93,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>position</td><td class=CDLDescription>{<a href="OpenLayers/BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link79 onMouseOver="ShowTip(event, 'tt71', 'link7 [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>position</td><td class=CDLDescription>{<a href="OpenLayers/BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link82 onMouseOver="ShowTip(event, 'tt74', 'link8 [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.Functions"></a>Functions</h3></div></div>
 
@@ -101,13 +101,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h2><div class=CBody></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Format.XML.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLay [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Format.XML.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLay [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.concatChildValues"></a>concatChildValues</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>concatChildValues: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>def</td><td  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.concatChildValues"></a>concatChildValues</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>concatChildValues: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>def</td><td  [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Post"></a>OpenLayers.<wbr>Layer.<wbr>WMS.Post</h2><div class=CBody><p>Instances of OpenLayers.Layer.WMS.Post are used to retrieve data from OGC Web Mapping Services via HTTP-POST (application/x-www-form-urlencoded).  Create a new WMS layer with the <a href="#OpenLayers.Layer.WMS.Post.OpenLayers.Layer.WMS.Post" class=LConstructor id=link82 onMouseOver="ShowTip(event, 'tt73', 'link82')" onMouseOut="Hi [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Post"></a>OpenLayers.<wbr>Layer.<wbr>WMS.Post</h2><div class=CBody><p>Instances of OpenLayers.Layer.WMS.Post are used to retrieve data from OGC Web Mapping Services via HTTP-POST (application/x-www-form-urlencoded).  Create a new WMS layer with the <a href="#OpenLayers.Layer.WMS.Post.OpenLayers.Layer.WMS.Post" class=LConstructor id=link85 onMouseOver="ShowTip(event, 'tt76', 'link85')" onMouseOut="Hi [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Post.Properties"></a>Properties</h3></div></div>
 
@@ -120,7 +120,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
  "http://wms.jpl.nasa.gov/wms.cgi",
  {layers: "modis, global_mosaic"});</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} A name for the layer</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} Base url for the WMS (e.g.  <a href="http://wms.jpl.nasa.gov/wms.cgi" class=LURL target=_top>http://wms.jpl.nasa.gov/wms.cgi</a>)</td></tr><tr><td class=CDLEntry [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>WMS.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.WMS and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/WMS-js.html#OpenLayers.Layer.WMS" class=LClass id=link86 onMouseOver="ShowTip(event, 'tt74', 'link86')" onMous [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>WMS.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.WMS and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/WMS-js.html#OpenLayers.Layer.WMS" class=LClass id=link89 onMouseOver="ShowTip(event, 'tt77', 'link89')" onMous [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled.Properties"></a>Properties</h3></div></div>
 
@@ -130,7 +130,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled.OpenLayers.Layer.WMS.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>WMS.<wbr>Untiled</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>params</td><td class= [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>MapServer.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.MapServer and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/MapServer-js.html#OpenLayers.Layer.MapServer" class=LClass id=link87 onMouseOver="ShowTip(ev [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>MapServer.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.MapServer and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/MapServer-js.html#OpenLayers.Layer.MapServer" class=LClass id=link90 onMouseOver="ShowTip(ev [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled.Properties"></a>Properties</h3></div></div>
 
@@ -140,19 +140,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled.OpenLayers.Layer.MapServer.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>MapServer.<wbr>Untiled</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>par [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile.WFS"></a>OpenLayers.<wbr>Tile.WFS</h2><div class=CBody><p>Instances of OpenLayers.Tile.WFS are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.WFS" class=LClass id=link89 onMouseOver="ShowTip(event, 'tt77', 'link89')" onMouseOut="HideTip('tt77')">OpenLayers.Tile.WFS</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile.WFS"></a>OpenLayers.<wbr>Tile.WFS</h2><div class=CBody><p>Instances of OpenLayers.Tile.WFS are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.WFS" class=LClass id=link92 onMouseOver="ShowTip(event, 'tt80', 'link92')" onMouseOut="HideTip('tt80')">OpenLayers.Tile.WFS</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.Functions"></a>Functions</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>nullify references to prevent circular references and memory leaks</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Feature.WFS"></a>OpenLayers.<wbr>Feature.WFS</h2><div class=CBody><p>WFS handling class, for use as a featureClass on the WFS layer for handling ‘point’ WFS types.  Good for subclassing when creating a custom WFS like XML application.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link90 onMouseOver="ShowTip(event, 'tt10', 'l [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Feature.WFS"></a>OpenLayers.<wbr>Feature.WFS</h2><div class=CBody><p>WFS handling class, for use as a featureClass on the WFS layer for handling ‘point’ WFS types.  Good for subclassing when creating a custom WFS like XML application.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link93 onMouseOver="ShowTip(event, 'tt10', 'l [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.WFS.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.WFS.OpenLayers.Feature.WFS"></a>OpenLayers.<wbr>Feature.WFS</h3><div class=CBody><p>Create a WFS feature.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="OpenLayers/Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>}</td></tr><tr><td class=CDLEntry>xmlNode</td><t [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WFS"></a>OpenLayers.<wbr>Layer.WFS</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with a Protocol.WFS and one or more Strategies.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link102 onMouseOver="ShowTip(event, 'tt78', 'link102')" onMouseOut="HideTip('tt78') [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WFS"></a>OpenLayers.<wbr>Layer.WFS</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with a Protocol.WFS and one or more Strategies.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link105 onMouseOver="ShowTip(event, 'tt81', 'link105')" onMouseOut="HideTip('tt81') [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.Properties"></a>Properties</h3></div></div>
 
@@ -160,9 +160,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.ratio"></a>ratio</h3><div class=CBody><p>{Float} The ratio property determines the size of the serverside query relative to the map viewport size.  By default, we load an area twice as big as the map, to allow for panning without immediately reload.  Setting this to 1 will cause the area of the WFS request to match the map area exactly.  It is recommended to set this to some number at l [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.featureClass"></a>featureClass</h3><div class=CBody><p>{<a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link103 onMouseOver="ShowTip(event, 'tt10', 'link103')" onMouseOut="HideTip('tt10')">OpenLayers.Feature</a>} If featureClass is defined, an old-style markers based WFS layer is created instead of a new-style vector layer.  If sent, this should be a subclass of OpenLayers [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.featureClass"></a>featureClass</h3><div class=CBody><p>{<a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link106 onMouseOver="ShowTip(event, 'tt10', 'link106')" onMouseOut="HideTip('tt10')">OpenLayers.Feature</a>} If featureClass is defined, an old-style markers based WFS layer is created instead of a new-style vector layer.  If sent, this should be a subclass of OpenLayers [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link104 onMouseOver="ShowTip(event, 'tt11', 'link104')" onMouseOut="HideTip('tt11')">OpenLayers.Format</a>} The format you want the data to be parsed with.  Must be passed in the constructor.  Should be a class, not an instance.  This option can only be used if no featureCla [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link107 onMouseOver="ShowTip(event, 'tt11', 'link107')" onMouseOut="HideTip('tt11')">OpenLayers.Format</a>} The format you want the data to be parsed with.  Must be passed in the constructor.  Should be a class, not an instance.  This option can only be used if no featureCla [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.formatOptions"></a>formatOptions</h3><div class=CBody><p>{Object} Hash of options which should be passed to the format when it is created.  Must be passed in the constructor.</p></div></div></div>
 
@@ -190,11 +190,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.refresh"></a>refresh</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">refresh: function()</td></tr></table></blockquote><p>Refreshes all the features of the layer</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.getDataExtent"></a>getDataExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getDataExtent: function ()</td></tr></table></blockquote><p>Calculates the max extent which includes all of the layer data.</p><h4 class=CHeading>Returns</h4><p>{<a href="OpenLayers/BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link10 [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.getDataExtent"></a>getDataExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getDataExtent: function ()</td></tr></table></blockquote><p>Calculates the max extent which includes all of the layer data.</p><h4 class=CHeading>Returns</h4><p>{<a href="OpenLayers/BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link10 [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity: function (</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h2><div class=CBody><p><b>Deprecated</b>.  Use <a href="OpenLayers/Layer/Bing-js.html#OpenLayers.Layer.Bing" class=LClass id=link119 onMouseOver="ShowTip(event, 'tt80', 'link119')" onMouseOut="HideTip('tt80')">OpenLayers.Layer.Bing</a> instead.</p><p>Instances of OpenLayers.Layer.VirtualEarth are used to display the data from the Bing Maps AJAX  [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h2><div class=CBody><p><b>Deprecated</b>.  Use <a href="OpenLayers/Layer/Bing-js.html#OpenLayers.Layer.Bing" class=LClass id=link122 onMouseOver="ShowTip(event, 'tt83', 'link122')" onMouseOut="HideTip('tt83')">OpenLayers.Layer.Bing</a> instead.</p><p>Instances of OpenLayers.Layer.VirtualEarth are used to display the data from the Bing Maps AJAX  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.Constants"></a>Constants</h3></div></div>
 
@@ -208,7 +208,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.type"></a>type</h3><div class=CBody><p>{VEMapType}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.VirtualEarth.sphericalMercator" class=LProperty id=link123 onMouseOver="ShowTip(event, 'tt84', 'link123')" onMouseOut="HideTip('tt84')">sphericalMercator</a> is true.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.VirtualEarth.sphericalMercator" class=LProperty id=link126 onMouseOver="ShowTip(event, 'tt87', 'link126')" onMouseOut="HideTip('tt87')">sphericalMercator</a> is true.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.sphericalMercator"></a>sphericalMercator</h3><div class=CBody><p>{Boolean} Should the map act as a mercator-projected map?  This will cause all interactions with the map to be in the actual map projection, which allows support for vector drawing, overlaying other maps, etc.</p></div></div></div>
 
@@ -216,7 +216,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h3><div class=CBody><p>Creates a new instance of a OpenLayers.Layer.VirtualEarth.  If you use an instance of OpenLayers.Layer.VirtualEarth in you map, you should set the <a href="OpenLayers/Map-js.html#OpenLayers.Map" class=LClass id=link124 onMouseOver="ShowTip(event, 'tt85', 'link124')" onMouseOut="HideTip(' [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h3><div class=CBody><p>Creates a new instance of a OpenLayers.Layer.VirtualEarth.  If you use an instance of OpenLayers.Layer.VirtualEarth in you map, you should set the <a href="OpenLayers/Map-js.html#OpenLayers.Map" class=LClass id=link127 onMouseOver="ShowTip(event, 'tt88', 'link127')" onMouseOut="HideTip(' [...]
     // other map options
     restrictedExtent : OpenLayers.Bounds(-20037508, -20037508, 20037508, 20037508)
 } );
@@ -255,7 +255,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.getMapObjectPixelFromXY"></a>getMapObjectPixelFromXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectPixelFromXY: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprin [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL"></a>OpenLayers.<wbr>Protocol.SQL</h2><div class=CBody><p>Abstract SQL protocol class.   Not to be instantiated directly.   Use one of the SQL protocol subclasses instead.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Protocol-js.html#OpenLayers.Protocol" class=LClass id=link127 onMouseOver="ShowTip(event, 'tt86', 'link127')" onMouseOut="HideTip('tt86')">OpenLayers.Prot [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL"></a>OpenLayers.<wbr>Protocol.SQL</h2><div class=CBody><p>Abstract SQL protocol class.   Not to be instantiated directly.   Use one of the SQL protocol subclasses instead.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Protocol-js.html#OpenLayers.Protocol" class=LClass id=link130 onMouseOver="ShowTip(event, 'tt89', 'link130')" onMouseOut="HideTip('tt89')">OpenLayers.Prot [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Properties"></a>Properties</h3></div></div>
 
@@ -273,7 +273,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.supported"></a>supported</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">supported: function()</td></tr></table></blockquote><p>This should be overridden by specific subclasses</p><h4 class=CHeading>Returns</h4><p>{Boolean} Whether or not the browser supports the SQL backend</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears"></a>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears</h2><div class=CBody><p>This Protocol stores feature in the browser via the Gears Database module <a href="http://code.google.com/apis/gears/api_database.html" class=LURL target=_top>http://code.google.com<wbr>/apis<wbr>/gears<wbr>/api_database.html</a>.</p><p>The main advantage is that all the read, create, update and delete operations can be do [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears"></a>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears</h2><div class=CBody><p>This Protocol stores feature in the browser via the Gears Database module <a href="http://code.google.com/apis/gears/api_database.html" class=LURL target=_top>http://code.google.com<wbr>/apis<wbr>/gears<wbr>/api_database.html</a>.</p><p>The main advantage is that all the read, create, update and delete operations can be do [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.Constructor"></a>Constructor</h3></div></div>
 
@@ -285,17 +285,17 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.supported"></a>supported</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">supported: function()</td></tr></table></blockquote><p>Determine whether a browser supports Gears</p><h4 class=CHeading>Returns</h4><p>{Boolean} The browser supports Gears</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>R [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>R [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.create"></a>create</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>create: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.create"></a>create</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>create: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.update"></a>update</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>update: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.update"></a>update</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>update: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.delete"></a>delete</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>"delete": function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.delete"></a>delete</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>"delete": function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.commit"></a>commit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>commit: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.commit"></a>commit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>commit: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Yahoo"></a>OpenLayers.<wbr>Layer.<wbr>Yahoo</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/EventPane-js.html#OpenLayers.Layer.EventPane" class=LClass id=link172 onMouseOver="ShowTip(event, 'tt82', 'link172')" onMouseOut="HideTip('tt82')">OpenLayers.Layer.EventPane</a></li><li><a href="OpenLayers/Layer/FixedZoomLevels-js.html#OpenLayers.Layer.FixedZoomLevels" class [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Yahoo"></a>OpenLayers.<wbr>Layer.<wbr>Yahoo</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/EventPane-js.html#OpenLayers.Layer.EventPane" class=LClass id=link175 onMouseOver="ShowTip(event, 'tt85', 'link175')" onMouseOut="HideTip('tt85')">OpenLayers.Layer.EventPane</a></li><li><a href="OpenLayers/Layer/FixedZoomLevels-js.html#OpenLayers.Layer.FixedZoomLevels" class [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.Constants"></a>Constants</h3></div></div>
 
@@ -309,7 +309,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.type"></a>type</h3><div class=CBody><p>{YahooMapType}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.Yahoo.sphericalMercator" class=LProperty id=link174 onMouseOver="ShowTip(event, 'tt89', 'link174')" onMouseOut="HideTip('tt89')">sphericalMercator</a> is true.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.Yahoo.sphericalMercator" class=LProperty id=link177 onMouseOver="ShowTip(event, 'tt92', 'link177')" onMouseOut="HideTip('tt92')">sphericalMercator</a> is true.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.sphericalMercator"></a>sphericalMercator</h3><div class=CBody><p>{Boolean} Should the map act as a mercator-projected map?  This will cause all interactions with the map to be in the actual map projection, which allows support for vector drawing, overlaying other maps, etc.</p></div></div></div>
 
@@ -319,7 +319,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Overri [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Overri [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getWarningHTML"></a>getWarningHTML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getWarningHTML:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} String with information on why layer is broken, how to get it working.</p></div></div></div>
 
@@ -351,13 +351,13 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getMapObjectPixelFromXY"></a>getMapObjectPixelFromXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectPixelFromXY: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " now [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getMapObjectSizeFromOLSize"></a>getMapObjectSizeFromOLSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectSizeFromOLSize: function(</td><td class="PParameter  prettyprint " nowrap>olSize</td><td class="PAfterParameters  prettyprint "now [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getMapObjectSizeFromOLSize"></a>getMapObjectSizeFromOLSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectSizeFromOLSize: function(</td><td class="PParameter  prettyprint " nowrap>olSize</td><td class="PAfterParameters  prettyprint "now [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.GML"></a>OpenLayers.<wbr>Layer.GML</h2><div class=CBody><p>Create a vector layer by parsing a GML file.  The GML file is passed in as a parameter.  <b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with Protocol.HTTP and Strategy.Fixed.  Provide the protocol with a format parameter to get the parser you want for your data.</p><h4 class=CHeading>Inherits [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.GML"></a>OpenLayers.<wbr>Layer.GML</h2><div class=CBody><p>Create a vector layer by parsing a GML file.  The GML file is passed in as a parameter.  <b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with Protocol.HTTP and Strategy.Fixed.  Provide the protocol with a format parameter to get the parser you want for your data.</p><h4 class=CHeading>Inherits [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link180 onMouseOver="ShowTip(event, 'tt11', 'link180')" onMouseOut="HideTip('tt11')">OpenLayers.Format</a>} The format you want the data to be parsed with.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link183 onMouseOver="ShowTip(event, 'tt11', 'link183')" onMouseOut="HideTip('tt11')">OpenLayers.Format</a>} The format you want the data to be parsed with.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.formatOptions"></a>formatOptions</h3><div class=CBody><p>{Object} Hash of options which should be passed to the format when it is created.  Must be passed in the constructor.</p></div></div></div>
 
@@ -369,11 +369,11 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.setVisibility"></a>setVisibility</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setVisibility: function(</td><td class="PParameter  prettyprint " nowrap>visibility,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>noEvent</td><td cla [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h2><div class=CBody><p>This class is <b>not supported</b>, and probably isn’t what you’re looking for.  Instead, most users probably want something like:</p><blockquote><pre class="prettyprint">var poly = new OpenLayers.Bounds(0,0,10,10).toGeometry();</pre></blockquote><p>This will create a rectangular Polygon geometry.</p><h4 class= [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h2><div class=CBody><p>This class is <b>not supported</b>, and probably isn’t what you’re looking for.  Instead, most users probably want something like:</p><blockquote><pre class="prettyprint">var poly = new OpenLayers.Bounds(0,0,10,10).toGeometry();</pre></blockquote><p>This will create a rectangular Polygon geometry.</p><h4 class= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>points</td><td class=CDLDescription>{Array(<a href="OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link184 onMouseOver="ShowTip(event, 'tt92', [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>points</td><td class=CDLDescription>{Array(<a href="OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link187 onMouseOver="ShowTip(event, 'tt95', [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.Functions"></a>Functions</h3></div></div>
 
@@ -381,7 +381,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.getArea"></a>getArea</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getArea: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The area of the geometry</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.NG"></a>OpenLayers.<wbr>Renderer.NG</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Renderer/Elements-js.html#OpenLayers.Renderer.Elements" class=LClass id=link185 onMouseOver="ShowTip(event, 'tt93', 'link185')" onMouseOut="HideTip('tt93')">OpenLayers.Renderer.Elements</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBo [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.NG"></a>OpenLayers.<wbr>Renderer.NG</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Renderer/Elements-js.html#OpenLayers.Renderer.Elements" class=LClass id=link188 onMouseOver="ShowTip(event, 'tt96', 'link188')" onMouseOut="HideTip('tt96')">OpenLayers.Renderer.Elements</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBo [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.Constants"></a>Constants</h3></div></div>
 
@@ -391,7 +391,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.OpenLayers.Renderer.NG"></a>OpenLayers.<wbr>Renderer.NG</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>containerID</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} options for this renderer.  Supported options are:</td></tr></tab [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.SVG2"></a>OpenLayers.<wbr>Renderer.SVG2</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="#OpenLayers.Renderer.NG" class=LClass >OpenLayers.Renderer.NG</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Renderer.SVG [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.SVG2"></a>OpenLayers.<wbr>Renderer.SVG2</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="#OpenLayers.Renderer.NG" class=LClass >OpenLayers.Renderer.NG</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Renderer.SVG [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.Constants"></a>Constants</h3></div></div>
 
@@ -413,21 +413,39 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.OpenLayers.Renderer.SVG2.LABEL_VFACTOR"></a>OpenLayers.<wbr>Renderer.<wbr>SVG2.<wbr>LABEL_VFACTOR</h3><div class=CBody><p>{Object}</p></div></div></div>
 
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h2><div class=CBody><p>This class is <b>deprecated</b>.  Use {<a href="OpenLayers/Popup/Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>} and round corners using CSS3’s border-radius property.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Popup/Anchored-js.html#OpenLayers.Pop [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescription>{<a href="OpenLayers/BaseTypes/LonLat-js.html#OpenLayers. [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setSize"></a>setSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setSize:function(</td><td class="PParameter  prettyprint " nowrap>contentSize</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setBackgroundColor"></a>setBackgroundColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBackgroundColor:function(</td><td class="PParameter  prettyprint " nowrap>color</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity:function(</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constants"></a>Constants</h3></div></div>
+
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.CORNER_SIZE"></a>CORNER_SIZE</h3><div class=CBody><p>{Integer} 5.  Border space for the RICO corners.</p></div></div></div>
+
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEnt [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEnt [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([32], 34);// --></script></div><!--Menu-->
+HideAllBut([35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Class.inherit = function (</td><td class="PParameter  prettyprint " nowrap>P</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="tt2"><div class= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Class.inherit = function (</td><td class="PParameter  prettyprint " nowrap>P</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="tt2"><div class= [...]
 
 
 
diff --git a/doc/apidocs/index/Classes.html b/doc/apidocs/index/Classes.html
index 6d285c2..9fabe2c 100644
--- a/doc/apidocs/index/Classes.html
+++ b/doc/apidocs/index/Classes.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Class Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · <a href="#O">O</a> · P · Q · R · <a href="Classes2.html#S">S</a> · T · <a href="Classes2.html#U">U</a> · V · W · X · Y · Z</div><table border=0 cellspacing= [...]
+<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · <a href="#C">C</a> · D · E · F · G · H · I · J · K · L · M · N · <a href="#O">O</a> · P · Q · R · <a href="Classes2.html#S">S</a> · T · <a href="Classes2.html#U">U</a> · V · W · X · Y · Z</div><table bord [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>The OpenLayers object provides a namespace for all things OpenLayers</div></div><div class=CToolTip id="tt2"><div class=CClass><b>Deprecated</b>. </div></div><div class=CToolTip id="tt3"><div class=CClass>{Object}</div></div><div class=CToolTip id="tt4"><div class=CClass>A collection of utility functions for executing methods that repaint a portion of the browser window. </div></div><div class=CToolTip id="tt5"><div class=CClass>Contains con [...]
+<!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>The OpenLayers object provides a namespace for all things OpenLayers</div></div><div class=CToolTip id="tt2"><div class=CClass><b>Deprecated</b>. </div></div><div class=CToolTip id="tt3"><div class=CClass>{Object}</div></div><div class=CToolTip id="tt4"><div class=CClass>A collection of utility functions for executing methods that repaint a portion of the browser window. </div></div><div class=CToolTip id="tt5"><div class=CClass>Contains con [...]
 
 </div><!--Index-->
 
@@ -21,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Classes2.html b/doc/apidocs/index/Classes2.html
index 8f01d79..116038a 100644
--- a/doc/apidocs/index/Classes2.html
+++ b/doc/apidocs/index/Classes2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Class Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · <a href="Classes.html#O">O</a> · P · Q · R · <a href="#S">S</a> · T · <a href="#U">U</a> · V · W · X · Y · Z</div><table border=0 cellspacing=0 cellpadding= [...]
+<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · <a href="Classes.html#C">C</a> · D · E · F · G · H · I · J · K · L · M · N · <a href="Classes.html#O">O</a> · P · Q · R · <a href="#S">S</a> · T · <a href="#U">U</a> · V · W · X · Y · Z</div><table border [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt299"><div class=CClass>The OpenLayers.Spherical namespace includes utility functions for calculations on the basis of a spherical earth (ignoring ellipsoidal effects), which is accurate enough for most purposes.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt314"><div class=CClass>The OpenLayers.Spherical namespace includes utility functions for calculations on the basis of a spherical earth (ignoring ellipsoidal effects), which is accurate enough for most purposes.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Constants.html b/doc/apidocs/index/Constants.html
index 206dda1..2ee6bb9 100644
--- a/doc/apidocs/index/Constants.html
+++ b/doc/apidocs/index/Constants.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constant Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constant Index</div><div class=INavigationBar>$#! · 0-9 · A · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · E · <a href="#F">F</a> · G · H · <a href="#I">I</a> · J · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · N · <a href="#O">O</a> · P · Q · <a href="#R">R</a> · <a href="#S">S</ [...]
+<div id=Index><div class=IPageTitle>Constant Index</div><div class=INavigationBar>$#! · 0-9 · A · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · E · <a href="#F">F</a> · G · H · <a href="#I">I</a> · J · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · N · <a href="#O">O</a> · P · Q · <a href="#R">R</a> · <a href="#S">S</ [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt2"><div class=CConstant>{Array(String)} supported events</div></div><div class=CToolTip id="tt3"><div class=CConstant>{String} A substring of the navigator.userAgent property. </div></div><!--END_ND_TOOLTIPS-->
 
@@ -29,55 +29,55 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt24"><div class=CConstant>Mixin for tiles that use form-encoded POST requests to get images from remote services. </div></div><div class=CToolTip id="tt25"><div class=CConstant>{Object} Simple hash map to convert format to extension.</div></div><div class=CToolTip id="tt26"><div class=CConstant>{Object} Constant inches per unit -- borrowed from MapServer mapscale.c derivation of nautical miles from http://en.wikipedia.org/wiki/Nautical_mile Includes the full set  [...]
+<div class=CToolTip id="tt24"><div class=CConstant>Mixin for tiles that use form-encoded POST requests to get images from remote services. </div></div><div class=CToolTip id="tt25"><div class=CConstant>{HTMLImageElement} The image for a tile.</div></div><div class=CToolTip id="tt26"><div class=CConstant>{Object} Simple hash map to convert format to extension.</div></div><div class=CToolTip id="tt27"><div class=CConstant>{Object} Constant inches per unit -- borrowed from MapServer mapscal [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt28"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt29"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt30"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt31"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt32"><div class=CConstant>keydown, keypress, keyup</div></div><div class=CToolTip id="tt33"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt34"><div class=CConstant>{int}</div></d [...]
+<div class=CToolTip id="tt29"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt30"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt31"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt32"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt33"><div class=CConstant>keydown, keypress, keyup</div></div><div class=CToolTip id="tt34"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt35"><div class=CConstant>{int}</div></d [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt39"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt40"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt41"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt42"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt43"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt44"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt45"><div class=CConstant>{Object}</div>< [...]
+<div class=CToolTip id="tt40"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt41"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt42"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt43"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt44"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt45"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt46"><div class=CConstant>{Object}</div>< [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt52"><div class=CConstant>{Integer} Firefox has a limitation where values larger or smaller than about 15000 in an SVG document lock the browser up. </div></div><div class=CToolTip id="tt53"><div class=CConstant>{Integer} 21</div></div><div class=CToolTip id="tt54"><div class=CConstant>{Integer} 19</div></div><div class=CToolTip id="tt55"><div class=CConstant>{Integer} 17</div></div><div class=CToolTip id="tt56"><div class=CConstant>{Integer} 0</div></div><div cl [...]
+<div class=CToolTip id="tt53"><div class=CConstant>{Integer} Firefox has a limitation where values larger or smaller than about 15000 in an SVG document lock the browser up. </div></div><div class=CToolTip id="tt54"><div class=CConstant>{Integer} 21</div></div><div class=CToolTip id="tt55"><div class=CConstant>{Integer} 19</div></div><div class=CToolTip id="tt56"><div class=CConstant>{Integer} 17</div></div><div class=CToolTip id="tt57"><div class=CConstant>{Integer} 0</div></div><div cl [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt63"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt65"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt64"><div class=CConstant>{Integer} Constant used to make the control work in reshape mode</div></div><div class=CToolTip id="tt65"><div class=CConstant>{Integer} Constant used to make the control work in resize mode</div></div><div class=CToolTip id="tt66"><div class=CConstant>{Array} The properties that are used for calculating resolutions information.</div></div><div class=CToolTip id="tt67"><div class=CConstant>{Array(Float)} Hardcode these resolutions so tha [...]
+<div class=CToolTip id="tt66"><div class=CConstant>{Integer} Constant used to make the control work in reshape mode</div></div><div class=CToolTip id="tt67"><div class=CConstant>{Integer} Constant used to make the control work in resize mode</div></div><div class=CToolTip id="tt68"><div class=CConstant>{Array} The properties that are used for calculating resolutions information.</div></div><div class=CToolTip id="tt69"><div class=CConstant>{Array(Float)} Hardcode these resolutions so tha [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt71"><div class=CConstant>Enumeration for service types</div></div><div class=CToolTip id="tt72"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><div class=CToolTip id="tt73"><div class=CConstant>TODO: remove this in 3.0 when we stop supporting build profiles that include OpenLayers.js</div></div><div class=CToolTip id="tt74"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and  [...]
+<div class=CToolTip id="tt73"><div class=CConstant>Enumeration for service types</div></div><div class=CToolTip id="tt74"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><div class=CToolTip id="tt75"><div class=CConstant>TODO: remove this in 3.0 when we stop supporting build profiles that include OpenLayers.js</div></div><div class=CToolTip id="tt76"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt78"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt79"><div class=CConstant>{Integer} 256 Default tile height (unless otherwise specified)</div></div><div class=CToolTip id="tt80"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for tiled layer</div></div><div class=CToolTip id="tt81"><div class=CConstant>{Integer} 256 Default  [...]
+<div class=CToolTip id="tt80"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt81"><div class=CConstant>{Integer} 256 Default tile height (unless otherwise specified)</div></div><div class=CToolTip id="tt82"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for tiled layer</div></div><div class=CToolTip id="tt83"><div class=CConstant>{Integer} 256 Default  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt82"><div class=CConstant>{Float} Used to hash URL param strings for multi-WMS server selection. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt84"><div class=CConstant>{Float} Used to hash URL param strings for multi-WMS server selection. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt83"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v2.</div></div><div class=CToolTip id="tt84"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v3.</div></div><div class=CToolTip id="tt85"><div class=CConstant>{String} 1.0.0</div></div><div class=CToolTip id="tt86"><div class=CConstant>{String} 1.1.0</div></div><div class=CToolTip id="tt87"><div class=CConstant>{String} 0.3.1</div></div><div  [...]
+<div class=CToolTip id="tt85"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v2.</div></div><div class=CToolTip id="tt86"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v3.</div></div><div class=CToolTip id="tt87"><div class=CConstant>{String} 1.0.0</div></div><div class=CToolTip id="tt88"><div class=CConstant>{String} 1.1.0</div></div><div class=CToolTip id="tt89"><div class=CConstant>{String} 0.3.1</div></div><div  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt97"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt100"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt98"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt101"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt99"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt102"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -85,10 +85,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Constructor.html b/doc/apidocs/index/Constructor.html
index ded056b..b6dbcc4 100644
--- a/doc/apidocs/index/Constructor.html
+++ b/doc/apidocs/index/Constructor.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constructor Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · <a href="#E">E</a> · <a href="#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · <a href="#N">N</a [...]
+<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · <a href="#E">E</a> · <a href="#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · <a href="#N">N</a [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CConstructor>Create a new ArcGIS93Rest layer object.</div></div><div class=CToolTip id="tt2"><div class=CConstructor>Creates a new instance of this class</div></div><div class=CToolTip id="tt3"><div class=CConstructor>Create a new ArcIMS layer object.</div></div><div class=CToolTip id="tt4"><div class=CConstructor>Create a new parser/writer for ArcXML. </div></div><div class=CToolTip id="tt5"><div class=CConstructor>Create a new parser for Atom.</d [...]
 
@@ -21,55 +21,55 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt11"><div class=CConstructor>Create a new click handler.</div></div><div class=CToolTip id="tt12"><div class=CConstructor>Create a new clustering strategy.</div></div><div class=CToolTip id="tt13"><div class=CConstructor>Creates a Geometry Collection -- a list of geoms.</div></div><div class=CToolTip id="tt14"><div class=CConstructor>Creates a comparison rule.</div></div><div class=CToolTip id="tt15"><div class=CConstructor>Create a new parser for Context documen [...]
+<div class=CToolTip id="tt11"><div class=CConstructor>Base class used to construct all other classes. </div></div><div class=CToolTip id="tt12"><div class=CConstructor>Create a new click handler.</div></div><div class=CToolTip id="tt13"><div class=CConstructor>Create a new clustering strategy.</div></div><div class=CToolTip id="tt14"><div class=CConstructor>Creates a Geometry Collection -- a list of geoms.</div></div><div class=CToolTip id="tt15"><div class=CConstructor>Creates a compari [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt17"><div class=CConstructor>Returns OpenLayers.Handler.Drag</div></div><div class=CToolTip id="tt18"><div class=CConstructor>Create a new control to drag features.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt18"><div class=CConstructor>Returns OpenLayers.Handler.Drag</div></div><div class=CToolTip id="tt19"><div class=CConstructor>Create a new control to drag features.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt19"><div class=CConstructor>Create an editing toolbar for a given layer.</div></div><div class=CToolTip id="tt20"><div class=CConstructor>Create a new event pane layer</div></div><div class=CToolTip id="tt21"><div class=CConstructor>Construct an OpenLayers.Events object.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt20"><div class=CConstructor>Create an editing toolbar for a given layer.</div></div><div class=CToolTip id="tt21"><div class=CConstructor>Create a new parser for encoded polylines</div></div><div class=CToolTip id="tt22"><div class=CConstructor>Create a new event pane layer</div></div><div class=CToolTip id="tt23"><div class=CConstructor>Construct an OpenLayers.Events object.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt22"><div class=CConstructor>Constructor for features.</div></div><div class=CToolTip id="tt23"><div class=CConstructor>Creates an ogc:FeatureId rule.</div></div><div class=CToolTip id="tt24"><div class=CConstructor>Create a new parser/writer for ArcXML Features. </div></div><div class=CToolTip id="tt25"><div class=CConstructor>This class represents a generic filter.</div></div><div class=CToolTip id="tt26"><div class=CConstructor>Create a new filter strategy.</d [...]
+<div class=CToolTip id="tt24"><div class=CConstructor>Constructor for features.</div></div><div class=CToolTip id="tt25"><div class=CConstructor>Create a new featureclick event type.</div></div><div class=CToolTip id="tt26"><div class=CConstructor>Creates an ogc:FeatureId rule.</div></div><div class=CToolTip id="tt27"><div class=CConstructor>Create a new parser/writer for ArcXML Features. </div></div><div class=CToolTip id="tt28"><div class=CConstructor>This class represents a generic fi [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt31"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt32"><div class=CConstructor>Create a new control to deal with browser geolocation API</div></div><div class=CToolTip id="tt33"><div class=CConstructor>Creates a geometry object.</div></div><div class=CToolTip id="tt34"><div class=CConstructor>Create a new parser for GeoRSS.</div></div><div class=CToolTip id="tt35"><div class=CConstructor>Create a GeoRSS Layer.</div> [...]
+<div class=CToolTip id="tt34"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt35"><div class=CConstructor>Create a new control to deal with browser geolocation API</div></div><div class=CToolTip id="tt36"><div class=CConstructor>Creates a geometry object.</div></div><div class=CToolTip id="tt37"><div class=CConstructor>Create a new parser for GeoRSS.</div></div><div class=CToolTip id="tt38"><div class=CConstructor>Create a GeoRSS Layer.</div> [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt42"><div class=CConstructor>Construct a handler.</div></div><div class=CToolTip id="tt43"><div class=CConstructor>Construct a hover handler.</div></div><div class=CToolTip id="tt44"><div class=CConstructor>A class for giving layers generic HTTP protocol.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt45"><div class=CConstructor>Construct a handler.</div></div><div class=CToolTip id="tt46"><div class=CConstructor>Construct a hover handler.</div></div><div class=CToolTip id="tt47"><div class=CConstructor>A class for giving layers generic HTTP protocol.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt45"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt46"><div class=CConstructor>Create a new image layer</div></div><div class=CToolTip id="tt47"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt48"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt49"><div class=CConstructor>Create a new image layer</div></div><div class=CToolTip id="tt50"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt48"><div class=CConstructor>Create a new parser for JSON.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt51"><div class=CConstructor>Create a new parser for JSON.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt49"><div class=CConstructor>Returns a new keyboard handler.</div></div><div class=CToolTip id="tt50"><div class=CConstructor>Create a new parser for KML.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt52"><div class=CConstructor>Returns a new keyboard handler.</div></div><div class=CToolTip id="tt53"><div class=CConstructor>Create a new parser for KML.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt51"><div class=CConstructor>Create a symbolizer for rendering lines.</div></div><div class=CToolTip id="tt52"><div class=CConstructor>Linear rings are constructed with an array of points. </div></div><div class=CToolTip id="tt53"><div class=CConstructor>Create a new LineString geometry</div></div><div class=CToolTip id="tt54"><div class=CConstructor>Creates a logical filter (And, Or, Not).</div></div><div class=CToolTip id="tt55"><div class=CConstructor>Create a [...]
+<div class=CToolTip id="tt54"><div class=CConstructor>Create a symbolizer for rendering lines.</div></div><div class=CToolTip id="tt55"><div class=CConstructor>Linear rings are constructed with an array of points. </div></div><div class=CToolTip id="tt56"><div class=CConstructor>Create a new LineString geometry</div></div><div class=CToolTip id="tt57"><div class=CConstructor>Creates a logical filter (And, Or, Not).</div></div><div class=CToolTip id="tt58"><div class=CConstructor>Create a [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt56"><div class=CConstructor>Constructor for a new OpenLayers.Map instance. </div></div><div class=CToolTip id="tt57"><div class=CConstructor>Create a new Mapguide layer, either tiled or untiled.</div></div><div class=CToolTip id="tt58"><div class=CConstructor>Create a new MapServer layer object</div></div><div class=CToolTip id="tt59"><div class=CConstructor>Create a Markers layer.</div></div><div class=CToolTip id="tt60"><div class=CConstructor>Create a new mod [...]
+<div class=CToolTip id="tt59"><div class=CConstructor>Constructor for a new OpenLayers.Map instance. </div></div><div class=CToolTip id="tt60"><div class=CConstructor>Create a new Mapguide layer, either tiled or untiled.</div></div><div class=CToolTip id="tt61"><div class=CConstructor>Create a new MapServer layer object</div></div><div class=CToolTip id="tt62"><div class=CConstructor>Create a Markers layer.</div></div><div class=CToolTip id="tt63"><div class=CConstructor>Create a new mod [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt64"><div class=CConstructor>Create a new navigation control</div></div><div class=CToolTip id="tt65"><div class=CConstructor>Add our two mousedefaults controls.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt67"><div class=CConstructor>Create a new navigation control</div></div><div class=CToolTip id="tt68"><div class=CConstructor>Add our two mousedefaults controls.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt66"><div class=CConstructor>Create a new parser for OGC exception reports.</div></div><div class=CToolTip id="tt67"><div class=CConstructor>Base class used to construct all other classes. </div></div><div class=CToolTip id="tt68"><div class=CConstructor>Create a new parser for OSM.</div></div><div class=CToolTip id="tt69"><div class=CConstructor>Create a new overview map</div></div><div class=CToolTip id="tt70"><div class=CConstructor>Create a new parser for OWS [...]
+<div class=CToolTip id="tt69"><div class=CConstructor>Create a new parser for OGC exception reports.</div></div><div class=CToolTip id="tt70"><div class=CConstructor>Create a new parser for OSM.</div></div><div class=CToolTip id="tt71"><div class=CConstructor>Create a new overview map</div></div><div class=CToolTip id="tt72"><div class=CConstructor>Create a new parser for OWSCommon.</div></div><div class=CToolTip id="tt73"><div class=CConstructor>Create a new parser for OWS Context docum [...]
 
 </div><!--Index-->
 
@@ -77,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Constructor2.html b/doc/apidocs/index/Constructor2.html
index 3a3ba00..4ada9b6 100644
--- a/doc/apidocs/index/Constructor2.html
+++ b/doc/apidocs/index/Constructor2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constructor Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,29 +11,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
+<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt72"><div class=CConstructor>Create a new paging strategy.</div></div><div class=CToolTip id="tt73"><div class=CConstructor>Control which handles the panning (in any of the cardinal directions) of the map by a set px distance.</div></div><div class=CToolTip id="tt74"><div class=CConstructor>Create a new control panel.</div></div><div class=CToolTip id="tt75"><div class=CConstructor>Add the four directional pan buttons.</div></div><div class=CToolTip id="tt76"><di [...]
+<div class=CToolTip id="tt74"><div class=CConstructor>Create a new paging strategy.</div></div><div class=CToolTip id="tt75"><div class=CConstructor>Control which handles the panning (in any of the cardinal directions) of the map by a set px distance.</div></div><div class=CToolTip id="tt76"><div class=CConstructor>Create a new control panel.</div></div><div class=CToolTip id="tt77"><div class=CConstructor>Add the four directional pan buttons.</div></div><div class=CToolTip id="tt78"><di [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt92"><div class=CConstructor>Create a symbolizer for rendering rasters.</div></div><div class=CToolTip id="tt93"><div class=CConstructor>Create a new Refresh strategy.</div></div><div class=CToolTip id="tt94"><div class=CConstructor>Create a new regular polygon handler.</div></div><div class=CToolTip id="tt95"><div class=CConstructor>Create a new root container for multiple vector layer. </div></div><div class=CToolTip id="tt96"><div class=CConstructor>Creates a  [...]
+<div class=CToolTip id="tt94"><div class=CConstructor>Create a symbolizer for rendering rasters.</div></div><div class=CToolTip id="tt95"><div class=CConstructor>Create a new Refresh strategy.</div></div><div class=CToolTip id="tt96"><div class=CConstructor>Create a new regular polygon handler.</div></div><div class=CToolTip id="tt97"><div class=CConstructor>Create a new root container for multiple vector layer. </div></div><div class=CToolTip id="tt98"><div class=CConstructor>Creates a  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt97"><div class=CConstructor>Create a new Save strategy.</div></div><div class=CToolTip id="tt98"><div class=CConstructor>Create a new scale line control.</div></div><div class=CToolTip id="tt99"><div class=CConstructor>A class for giving layers generic Script protocol.</div></div><div class=CToolTip id="tt100"><div class=CConstructor>Create a new control for selecting features.</div></div><div class=CToolTip id="tt101"><div class=CConstructor>Create an instance  [...]
+<div class=CToolTip id="tt99"><div class=CConstructor>Create a new Save strategy.</div></div><div class=CToolTip id="tt100"><div class=CConstructor>Create a new scale line control.</div></div><div class=CToolTip id="tt101"><div class=CConstructor>A class for giving layers generic Script protocol.</div></div><div class=CToolTip id="tt102"><div class=CConstructor>Create a new control for selecting features.</div></div><div class=CToolTip id="tt103"><div class=CConstructor>Create an instanc [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt112"><div class=CConstructor>Create a new parser for TSV Text.</div></div><div class=CToolTip id="tt113"><div class=CConstructor>Create a text layer.</div></div><div class=CToolTip id="tt114"><div class=CConstructor>Create a symbolizer for rendering text labels.</div></div><div class=CToolTip id="tt115"><div class=CConstructor>Constructor for a new OpenLayers.Tile instance.</div></div><div class=CToolTip id="tt116"><div class=CConstructor>Create a new read only  [...]
+<div class=CToolTip id="tt114"><div class=CConstructor>Create a new parser for TSV Text.</div></div><div class=CToolTip id="tt115"><div class=CConstructor>Create a text layer.</div></div><div class=CToolTip id="tt116"><div class=CConstructor>Create a symbolizer for rendering text labels.</div></div><div class=CToolTip id="tt117"><div class=CConstructor>Constructor for a new OpenLayers.Tile instance.</div></div><div class=CToolTip id="tt118"><div class=CConstructor>Create a new read only  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt120"><div class=CConstructor>Create a new UTFGrid layer.</div></div><div class=CToolTip id="tt121"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt123"><div class=CConstructor>Create a new UTFGrid layer.</div></div><div class=CToolTip id="tt124"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt122"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt123"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt124"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt125"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id=" [...]
+<div class=CToolTip id="tt125"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt126"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt127"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt128"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id=" [...]
 
 </div><!--Index-->
 
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Constructor3.html b/doc/apidocs/index/Constructor3.html
index e61d151..a9270e5 100644
--- a/doc/apidocs/index/Constructor3.html
+++ b/doc/apidocs/index/Constructor3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constructor Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
+<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt159"><div class=CConstructor>Create a WFS feature.</div></div><div class=CToolTip id="tt160"><div class=CConstructor>Create a WFS-T formatter. </div></div><div class=CToolTip id="tt161"><div class=CConstructor>A class for giving layers WFS protocol.</div></div><div class=CToolTip id="tt162"><div class=CConstructor>Create a new parser for WFS capabilities.</div></div><div class=CToolTip id="tt163"><div class=CConstructor>Create a new parser for WFS DescribeFeatur [...]
+<div class=CToolTip id="tt164"><div class=CConstructor>Create a new parser for WCS capabilities.</div></div><div class=CToolTip id="tt165"><div class=CConstructor>Create a WFS feature.</div></div><div class=CToolTip id="tt166"><div class=CConstructor>Create a WFS-T formatter. </div></div><div class=CToolTip id="tt167"><div class=CConstructor>A class for giving layers WFS protocol.</div></div><div class=CToolTip id="tt168"><div class=CConstructor>Create a new parser for WFS capabilities.< [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt174"><div class=CConstructor>Create a new parser for XLS.</div></div><div class=CToolTip id="tt175"><div class=CConstructor>Construct an XML parser. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt180"><div class=CConstructor>Create a new parser for XLS.</div></div><div class=CToolTip id="tt181"><div class=CConstructor>Construct an XML parser. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt176"><div class=CConstructor>Add the three zooming controls.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt182"><div class=CConstructor>Add the three zooming controls.</div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Files.html b/doc/apidocs/index/Files.html
index cf97e2a..bbf123d 100644
--- a/doc/apidocs/index/Files.html
+++ b/doc/apidocs/index/Files.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>File Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions.html b/doc/apidocs/index/Functions.html
index 053f27b..9674d9a 100644
--- a/doc/apidocs/index/Functions.html
+++ b/doc/apidocs/index/Functions.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · J · K · <a hr [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · <a href="Functions6.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request, the response object passed to this method must come from th [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request, the response object passed to this method must come from th [...]
 
 
 <!--START_ND_TOOLTIPS-->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions2.html b/doc/apidocs/index/Functions2.html
index 3525474..9bc9875 100644
--- a/doc/apidocs/index/Functions2.html
+++ b/doc/apidocs/index/Functions2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · J · K & [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · <a href="Funct [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt50"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the bounds for the geometry.</div></div><div class=CToolTip id="tt51"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the bo [...]
+<div class=CToolTip id="tt50"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the bounds for the geometry.</div></div><div class=CToolTip id="tt51"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the bo [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions3.html b/doc/apidocs/index/Functions3.html
index 8b032bf..fa3329e 100644
--- a/doc/apidocs/index/Functions3.html
+++ b/doc/apidocs/index/Functions3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · J · K & [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · <a href="Funct [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt119"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function ()</td></tr></table></blockquote>Deactivates a control and it’s associated handler if any. </div></div><div class=CToolTip id="tt120"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote>D [...]
+<div class=CToolTip id="tt122"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function ()</td></tr></table></blockquote>Deactivates a control and it’s associated handler if any. </div></div><div class=CToolTip id="tt123"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote>D [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions4.html b/doc/apidocs/index/Functions4.html
index a0a9ffe..b631dbc 100644
--- a/doc/apidocs/index/Functions4.html
+++ b/doc/apidocs/index/Functions4.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="#E">E</a> · <a href="#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · J · K · <a href [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="#E">E</a> · <a href="#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · <a href="Functions6.html#J">J [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt217"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>equals: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Determine whether another geometry is equivalent to this one. </div></div><div cla [...]
+<div class=CToolTip id="tt224"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encode: function (</td><td class="PParameter  prettyprint " nowrap>points,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dims,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</td><td class="PAfterParameters  pre [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt231"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">False : function()</td></tr></table></blockquote>A simple function to that just does “return false”. </div></div><div class=CToolTip id="tt232"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  p [...]
+<div class=CToolTip id="tt247"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">False : function()</td></tr></table></blockquote>A simple function to that just does “return false”. </div></div><div class=CToolTip id="tt248"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  p [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions5.html b/doc/apidocs/index/Functions5.html
index cff5689..39960fd 100644
--- a/doc/apidocs/index/Functions5.html
+++ b/doc/apidocs/index/Functions5.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · J · K & [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · <a href="Funct [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt243"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>GET: function(</td><td class="PParameter  prettyprint " nowrap>config</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Send an HTTP GET request. </div></div><div class=CToolTip id="tt244"><div class=CFuncti [...]
+<div class=CToolTip id="tt259"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>GET: function(</td><td class="PParameter  prettyprint " nowrap>config</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Send an HTTP GET request. </div></div><div class=CToolTip id="tt260"><div class=CFuncti [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions6.html b/doc/apidocs/index/Functions6.html
index c4b3a99..65d0fff 100644
--- a/doc/apidocs/index/Functions6.html
+++ b/doc/apidocs/index/Functions6.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,37 +11,41 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · J · K · <a href [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · K [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt399"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>hasAttributeNS: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prett [...]
+<div class=CToolTip id="tt417"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>hasAttributeNS: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prett [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt402"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt403"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">info: function()</td></tr></table></blockquote>Writes a message to the console with the visual “info” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt404"><div class [...]
+<div class=CToolTip id="tt420"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt421"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">info: function()</td></tr></table></blockquote>Writes a message to the console with the visual “info” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt422"><div class [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt424"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>limitSigDigs: function(</td><td class="PParameter  prettyprint " nowrap>num,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sig</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Limit the  [...]
+<div class=CToolTip id="tt442"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function js(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Detect which pro [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt429"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mergeNewParams:function(</td><td class="PParameter  prettyprint " nowrap>newParams</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Catch changeParams and uppercase the new params to be merged in before cal [...]
+<div class=CToolTip id="tt443"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>limitSigDigs: function(</td><td class="PParameter  prettyprint " nowrap>num,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sig</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Limit the  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt437"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">nextTrigger: function()</td></tr></table></blockquote>Restore the next state. </div></div><div class=CToolTip id="tt438"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Proje [...]
+<div class=CToolTip id="tt448"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mergeNewParams:function(</td><td class="PParameter  prettyprint " nowrap>newParams</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Catch changeParams and uppercase the new params to be merged in before cal [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt440"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>offset:function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parameters px - {<OpenLayers.Pixel>|Object} An OpenLayers.Pixel or an object with a [...]
+<div class=CToolTip id="tt457"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">nextTrigger: function()</td></tr></table></blockquote>Restore the next state. </div></div><div class=CToolTip id="tt458"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Proje [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt447"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">pageCount: function()</td></tr></table></blockquote>Get the total count of pages given the current cache of features.</div></div><div class=CToolTip id="tt448"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameter [...]
+<div class=CToolTip id="tt460"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>offset:function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parameters px - {<OpenLayers.Pixel>|Object} An OpenLayers.Pixel or an object with a [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt460"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>raiseLayer: function (</td><td class="PParameter  prettyprint " nowrap>layer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>delta</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Change  [...]
+<div class=CToolTip id="tt468"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">pageCount: function()</td></tr></table></blockquote>Get the total count of pages given the current cache of features.</div></div><div class=CToolTip id="tt469"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameter [...]
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt481"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>raiseLayer: function (</td><td class="PParameter  prettyprint " nowrap>layer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>delta</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Change  [...]
 
 </div><!--Index-->
 
@@ -49,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions7.html b/doc/apidocs/index/Functions7.html
index 086fb0f..b5a460d 100644
--- a/doc/apidocs/index/Functions7.html
+++ b/doc/apidocs/index/Functions7.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt533"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>save: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Tell the layer protocol to commit unsaved features. </div></div><div class=CToolTip  [...]
+<div class=CToolTip id="tt559"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>save: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Tell the layer protocol to commit unsaved features. </div></div><div class=CToolTip  [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Functions8.html b/doc/apidocs/index/Functions8.html
index 99533dd..e1e2bee 100644
--- a/doc/apidocs/index/Functions8.html
+++ b/doc/apidocs/index/Functions8.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,25 +11,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions.html#B">B</a> · <a href="Functions2.html#C">C</a> · <a href="Functions3.html#D">D</a> · <a href="Functions4.html#E">E</a> · <a href="Functions4.html#F">F</a> · <a href="Functions5.html#G">G</a> · <a href="Functions6.html#H">H</a> · <a href="Functions6.html#I">I</a> · [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt601"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">time: function()</td></tr></table></blockquote>Creates a new timer under the given name. </div></div><div class=CToolTip id="tt602"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">timeEnd: function()</td></tr></table></blockquote>Stops a timer created by a call t [...]
+<div class=CToolTip id="tt629"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">time: function()</td></tr></table></blockquote>Creates a new timer under the given name. </div></div><div class=CToolTip id="tt630"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">timeEnd: function()</td></tr></table></blockquote>Stops a timer created by a call t [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt623"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cla [...]
+<div class=CToolTip id="tt651"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cla [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt634"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>value2regex: function(</td><td class="PParameter  prettyprint " nowrap>wildCard,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>singleChar,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>escapeChar</td><td class="PAfterPar [...]
+<div class=CToolTip id="tt662"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>value2regex: function(</td><td class="PParameter  prettyprint " nowrap>wildCard,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>singleChar,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>escapeChar</td><td class="PAfterPar [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt637"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt638"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><tabl [...]
+<div class=CToolTip id="tt665"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt666"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><tabl [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt657"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER_DRAWING_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>newNode,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>nextNode</td><td class="PAfte [...]
+<div class=CToolTip id="tt687"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER_DRAWING_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>newNode,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>nextNode</td><td class="PAfte [...]
 
 </div><!--Index-->
 
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General.html b/doc/apidocs/index/General.html
index 7a499ca..2d5e907 100644
--- a/doc/apidocs/index/General.html
+++ b/doc/apidocs/index/General.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &midd [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request, the response object passed to this method must come from th [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request, the response object passed to this method must come from th [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General10.html b/doc/apidocs/index/General10.html
index 6b82507..991c9e6 100644
--- a/doc/apidocs/index/General10.html
+++ b/doc/apidocs/index/General10.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt868"><div class=CProperty>{OpenLayers.Map} This variable is set when the layer is added to the map, via the accessor function setMap().</div></div><div class=CToolTip id="tt869"><div class=CConstructor>Constructor for a new OpenLayers.Map instance. </div></div><div class=CToolTip id="tt870"><div class=CConstructor>Create a new Mapguide layer, either tiled or untiled.</div></div><div class=CToolTip id="tt871"><div class=CProperty>{Object} An object containing any [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt941"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt942"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt943"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt944"><div class=CProperty>{String} The layer name. </div></div><div class=CToolTip id="tt945"><div class=CProperty>{String} name of this rule</div></div><div class=CToolTip id="tt946"><div class=CProperty>{String}</ [...]
+<div class=CToolTip id="tt910"><div class=CProperty>{OpenLayers.Map} This variable is set when the layer is added to the map, via the accessor function setMap().</div></div><div class=CToolTip id="tt911"><div class=CConstructor>Constructor for a new OpenLayers.Map instance. </div></div><div class=CToolTip id="tt912"><div class=CConstructor>Create a new Mapguide layer, either tiled or untiled.</div></div><div class=CToolTip id="tt913"><div class=CProperty>{Object} An object containing any [...]
 
 </div><!--Index-->
 
@@ -25,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General11.html b/doc/apidocs/index/General11.html
index 2c4acd5..548d621 100644
--- a/doc/apidocs/index/General11.html
+++ b/doc/apidocs/index/General11.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt963"><div class=CProperty>{DOMelement|String} The DOM element to handle keys for. </div></div><div class=CToolTip id="tt964"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>offset:function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table> [...]
+<div class=CToolTip id="tt989"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt990"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt991"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt992"><div class=CProperty>{String} The layer name. </div></div><div class=CToolTip id="tt993"><div class=CProperty>{String} name of this rule</div></div><div class=CToolTip id="tt994"><div class=CProperty>{String}</ [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General12.html b/doc/apidocs/index/General12.html
index 1520cbc..5f5824a 100644
--- a/doc/apidocs/index/General12.html
+++ b/doc/apidocs/index/General12.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1295"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">pageCount: function()</td></tr></table></blockquote>Get the total count of pages given the current cache of features.</div></div><div class=CToolTip id="tt1296"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParamet [...]
+<div class=CToolTip id="tt1011"><div class=CProperty>{DOMelement|String} The DOM element to handle keys for. </div></div><div class=CToolTip id="tt1012"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>offset:function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></tabl [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General13.html b/doc/apidocs/index/General13.html
index 43f0b9c..e7f8daa 100644
--- a/doc/apidocs/index/General13.html
+++ b/doc/apidocs/index/General13.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1362"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt1363"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1358"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">pageCount: function()</td></tr></table></blockquote>Get the total count of pages given the current cache of features.</div></div><div class=CToolTip id="tt1359"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParamet [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General14.html b/doc/apidocs/index/General14.html
index 14f02b2..f12f176 100644
--- a/doc/apidocs/index/General14.html
+++ b/doc/apidocs/index/General14.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1364"><div class=CProperty>{Float} Optional radius in map units of the regular polygon. </div></div><div class=CToolTip id="tt1365"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>raiseLayer: function (</td><td class="PParameter  prettyprint " nowrap>layer,</td></tr><tr><td></td><td class="PParameter  prettyprin [...]
+<div class=CToolTip id="tt1427"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt1428"><div class=CProperty>{Boolean} If true, filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt1429"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General15.html b/doc/apidocs/index/General15.html
index 302de83..2d6bd52 100644
--- a/doc/apidocs/index/General15.html
+++ b/doc/apidocs/index/General15.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1478"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>save: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Tell the layer protocol to commit unsaved features. </div></div><div class=CToolTip [...]
+<div class=CToolTip id="tt1430"><div class=CProperty>{Float} Optional radius in map units of the regular polygon. </div></div><div class=CToolTip id="tt1431"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>raiseLayer: function (</td><td class="PParameter  prettyprint " nowrap>layer,</td></tr><tr><td></td><td class="PParameter  prettyprin [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General16.html b/doc/apidocs/index/General16.html
index 22c4b93..c3beddb 100644
--- a/doc/apidocs/index/General16.html
+++ b/doc/apidocs/index/General16.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1638"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt1639"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt1640"><div class=CProperty>{OpenLayers.Filter} Optional filter that will be evaluated to determine if a feature from the target layer is eligible for splitting.</div></div><div [...]
+<div class=CToolTip id="tt1547"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>save: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Tell the layer protocol to commit unsaved features. </div></div><div class=CToolTip [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General17.html b/doc/apidocs/index/General17.html
index 120228c..b2fe520 100644
--- a/doc/apidocs/index/General17.html
+++ b/doc/apidocs/index/General17.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1709"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cl [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1742"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt1743"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt1744"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt1745"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip  [...]
+<div class=CToolTip id="tt1709"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt1710"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt1711"><div class=CProperty>{OpenLayers.Filter} Optional filter that will be evaluated to determine if a feature from the target layer is eligible for splitting.</div></div><div [...]
 
 </div><!--Index-->
 
@@ -25,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General18.html b/doc/apidocs/index/General18.html
index 46a20eb..17ee2b8 100644
--- a/doc/apidocs/index/General18.html
+++ b/doc/apidocs/index/General18.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,21 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1803"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt1804"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt1805"><div class=CProperty>{Boole [...]
+<div class=CToolTip id="tt1782"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cl [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1846"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1847"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt1848"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt1849"><div class=CConstructor>Create a new parser for XLS.</div></div><div class=CToolTip id="tt1850"><div class=CConstructor>Construct an XML parser. </div></div><div class=CToolTip id="tt1851"><div class=CProperty>{Boolean} Orde [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1858"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1859"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt1860"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt1861"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1862"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><div class=CToolTip id="tt1863"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER_DRAWING_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prett [...]
+<div class=CToolTip id="tt1816"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt1817"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt1818"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt1819"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip  [...]
 
 </div><!--Index-->
 
@@ -33,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General19.html b/doc/apidocs/index/General19.html
new file mode 100644
index 0000000..38cb1bf
--- /dev/null
+++ b/doc/apidocs/index/General19.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1881"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt1882"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt1883"><div class=CProperty>{Boole [...]
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1927"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1928"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt1929"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt1930"><div class=CConstructor>Create a new parser for XLS.</div></div><div class=CToolTip id="tt1931"><div class=CConstructor>Construct an XML parser. </div></div><div class=CToolTip id="tt1932"><div class=CProperty>{Boolean} Orde [...]
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1939"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1940"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt1941"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt1942"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><!--END_ND_TOOLTIPS-->
+
+</div><!--Index-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([36], 37);// --></script></div><!--Menu-->
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/index/General2.html b/doc/apidocs/index/General2.html
index 3a5b3d8..4561f2c 100644
--- a/doc/apidocs/index/General2.html
+++ b/doc/apidocs/index/General2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt79"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt80"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt81"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt82"><div class=CProperty>{OpenLayers.Layer} The currently selected base layer. </div></div><div class=CToolTip id="tt83"><div class=CConstructor>Create a new BBOX strategy.</div></div><div class=CToolTip id=" [...]
+<div class=CToolTip id="tt81"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt82"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt83"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt84"><div class=CProperty>{OpenLayers.Layer} The currently selected base layer. </div></div><div class=CToolTip id="tt85"><div class=CConstructor>Create a new BBOX strategy.</div></div><div class=CToolTip id=" [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General20.html b/doc/apidocs/index/General20.html
new file mode 100644
index 0000000..2525d3b
--- /dev/null
+++ b/doc/apidocs/index/General20.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1943"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><div class=CToolTip id="tt1944"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER_DRAWING_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prett [...]
+
+</div><!--Index-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([36], 37);// --></script></div><!--Menu-->
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/apidocs/index/General3.html b/doc/apidocs/index/General3.html
index f473f08..5b1e3ab 100644
--- a/doc/apidocs/index/General3.html
+++ b/doc/apidocs/index/General3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt102"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the bounds for the geometry.</div></div><div class=CToolTip id="tt103"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the  [...]
+<div class=CToolTip id="tt104"><div class=CProperty>{Number} Number of image elements to keep referenced in this instance’s cache for fast reuse. </div></div><div class=CToolTip id="tt105"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote>Recalculate the bounds for the geometry.</div></div><div class=CToolTip id="tt106"><div class=CFunction><blockquote> [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General4.html b/doc/apidocs/index/General4.html
index baece83..ee13b97 100644
--- a/doc/apidocs/index/General4.html
+++ b/doc/apidocs/index/General4.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt209"><div class=CProperty>{Object} When keepData is true, this is the parsed string sent to read.</div></div><div class=CToolTip id="tt210"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt211"><div class=CProperty>{OpenLayers.Layer.PointTrack.TARGET_NODE} or {OpenLayers.Layer.PointTrack.SOURCE_NODE} optional. </div></div><div class=CToolTip id="tt212"><div class=CProperty>{Number} Maximum distance in pixels between clicks for a sequence of eve [...]
+<div class=CToolTip id="tt217"><div class=CProperty>{Object} When keepData is true, this is the parsed string sent to read.</div></div><div class=CToolTip id="tt218"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt219"><div class=CProperty>{OpenLayers.Layer.PointTrack.TARGET_NODE} or {OpenLayers.Layer.PointTrack.SOURCE_NODE} optional. </div></div><div class=CToolTip id="tt220"><div class=CProperty>The regex to be used for validating dates. </div></div><div class=CToolT [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General5.html b/doc/apidocs/index/General5.html
index ddd7850..ad69622 100644
--- a/doc/apidocs/index/General5.html
+++ b/doc/apidocs/index/General5.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt385"><div class=CProperty>{<OpenLayers.Easing>(Function)} Easing equation used for the animation Defaultly set to OpenLayers.Easing.Expo.easeOut</div></div><div class=CToolTip id="tt386"><div class=CProperty>{Boolean} Allow splits given intersection of edges only. </div></div><div class=CToolTip id="tt387"><div class=CConstructor>Create an editing toolbar for a given layer.</div></div><div class=CToolTip id="tt388"><div class=CProperty>{String} Set this to [...]
+<div class=CToolTip id="tt401"><div class=CProperty>{<OpenLayers.Easing>(Function)} Easing equation used for the animation Defaultly set to OpenLayers.Easing.Expo.easeOut</div></div><div class=CToolTip id="tt402"><div class=CProperty>{Boolean} Allow splits given intersection of edges only. </div></div><div class=CToolTip id="tt403"><div class=CConstructor>Create an editing toolbar for a given layer.</div></div><div class=CToolTip id="tt404"><div class=CProperty>{String} Set this to [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General6.html b/doc/apidocs/index/General6.html
index 8d9b405..e1cbe82 100644
--- a/doc/apidocs/index/General6.html
+++ b/doc/apidocs/index/General6.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt449"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt450"><div class=CProperty>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  </div></div><div class=CToolTip id="tt451"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">False : function()</td></tr></table></blockquote>A simple function to [...]
+<div class=CToolTip id="tt476"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt477"><div class=CProperty>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  </div></div><div class=CToolTip id="tt478"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">False : function()</td></tr></table></blockquote>A simple function to [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General7.html b/doc/apidocs/index/General7.html
index d2d82a0..f06fa04 100644
--- a/doc/apidocs/index/General7.html
+++ b/doc/apidocs/index/General7.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J">J</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt517"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt518"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt519"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt520"><div class=CConstructor>Create a new control to deal with browser geolocation API</div></div><div class=CToolTip id="tt521"><div class=CProperty>{Object} Options  [...]
+<div class=CToolTip id="tt548"><div class=CProperty>{Boolean} Calculate geodesic metrics instead of planar metrics. </div></div><div class=CToolTip id="tt549"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt550"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt551"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt552"><div class=CConstructor>Create a n [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General8.html b/doc/apidocs/index/General8.html
index e4beb49..dcc81b4 100644
--- a/doc/apidocs/index/General8.html
+++ b/doc/apidocs/index/General8.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · <a href="General9.html# [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · <a href="General9.html# [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt707"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt708"><div class=CConstructor>Construct a handler.</div></div><div class=CToolTip id="tt709"><div class=CProperty>{Boolean} Whether or not to handle right clicks. </div></div><div class=CToolTip id="tt710"><div class=CProperty>Defaults to ‘click’. </div></div><div class=CToolTip id="tt711"><div class=CProperty>{Object} Used to set non-default properties on the control&rsquo [...]
+<div class=CToolTip id="tt742"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt743"><div class=CConstructor>Construct a handler.</div></div><div class=CToolTip id="tt744"><div class=CProperty>{Boolean} Whether or not to handle right clicks. </div></div><div class=CToolTip id="tt745"><div class=CProperty>Defaults to ‘click’. </div></div><div class=CToolTip id="tt746"><div class=CProperty>{Object} Used to set non-default properties on the control&rsquo [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt730"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt731"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt732"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt733"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt734"><div class=CConstant>Mixin for tiles that use form-encoded POST requests to get images fro [...]
+<div class=CToolTip id="tt766"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt767"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt768"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt769"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt770"><div class=CConstant>Mixin for tiles that use form-encoded POST requests to get images fro [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt794"><div class=CConstructor>Create a new parser for JSON.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt832"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function js(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Detect which pro [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/General9.html b/doc/apidocs/index/General9.html
index 2836884..c402f42 100644
--- a/doc/apidocs/index/General9.html
+++ b/doc/apidocs/index/General9.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General8.html#I">I</a> · <a href="General8.html#J" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt795"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt796"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt797"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it alw [...]
+<div class=CToolTip id="tt834"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt835"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt836"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it alw [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt816"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt817"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt818"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt819"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt820"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt821"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt822"><div  [...]
+<div class=CToolTip id="tt855"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt856"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt857"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt858"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt859"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt860"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt861"><div  [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties.html b/doc/apidocs/index/Properties.html
index dc4efc3..2cf2335 100644
--- a/doc/apidocs/index/Properties.html
+++ b/doc/apidocs/index/Properties.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a> · J · <a href="Properties4.html [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a> · J · <a href="Properties4.html [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty>{Boolean} The control is active (read-only). </div></div><div class=CToolTip id="tt2"><div class=CProperty>{Boolean} Allow the map to function with “overlays” only. </div></div><div class=CToolTip id="tt3"><div class=CProperty>{Boolean} If is true the OpenLayers.Control.TYPE_TOOL controls can be deactivated by clicking the icon that represents them. </div></div><div class=CToolTip id="tt4"><div class=CProperty>{Boolean} If a l [...]
+<div class=CToolTip id="tt1"><div class=CProperty>{Boolean} The control is active (read-only). </div></div><div class=CToolTip id="tt2"><div class=CProperty>{Boolean} Allow the map to function with “overlays” only. </div></div><div class=CToolTip id="tt3"><div class=CProperty>{Boolean} If is true the OpenLayers.Control.TYPE_TOOL controls can be deactivated by clicking the icon that represents them. </div></div><div class=CToolTip id="tt4"><div class=CProperty>{Boolean} If a p [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt30"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt31"><div class=CProperty>{OpenLayers.Layer} The currently selected base layer. </div></div><div class=CToolTip id="tt32"><div class=CProperty>{Object} Values to start the animation with</div></div><div class=CToolTip id="tt33"><div class=CProperty>{Boolean} If true, map center will be set on location update.</div></div><div class=CToolTip id="tt34"><div class=CProperty>{OpenLayers.Bounds} nul [...]
+<div class=CToolTip id="tt32"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt33"><div class=CProperty>{OpenLayers.Layer} The currently selected base layer. </div></div><div class=CToolTip id="tt34"><div class=CProperty>{Object} Values to start the animation with</div></div><div class=CToolTip id="tt35"><div class=CProperty>{Boolean} If true, map center will be set on location update.</div></div><div class=CToolTip id="tt36"><div class=CProperty>{OpenLayers.Bounds} nul [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt40"><div class=CProperty>{Object} Function to be called when the read operation completes.</div></div><div class=CToolTip id="tt41"><div class=CProperty>{String} The name of the query string parameter that the service recognizes as the callback identifier. </div></div><div class=CToolTip id="tt42"><div class=CProperty>{String} Where a service requires that the callback query string parameter value is prefixed by some string, this value may be set. </div></div><d [...]
+<div class=CToolTip id="tt42"><div class=CProperty>{Number} Number of image elements to keep referenced in this instance’s cache for fast reuse. </div></div><div class=CToolTip id="tt43"><div class=CProperty>{Object} Function to be called when the read operation completes.</div></div><div class=CToolTip id="tt44"><div class=CProperty>{String} The name of the query string parameter that the service recognizes as the callback identifier. </div></div><div class=CToolTip id="tt45"><div [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties2.html b/doc/apidocs/index/Properties2.html
index 04c76fb..ea3f1b7 100644
--- a/doc/apidocs/index/Properties2.html
+++ b/doc/apidocs/index/Properties2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="#D">D</a> · <a href="#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a> · J · <a href="Pro [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="#D">D</a> · <a href="#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a> · J · <a href="Pro [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt70"><div class=CProperty>{Object} When keepData is true, this is the parsed string sent to read.</div></div><div class=CToolTip id="tt71"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt72"><div class=CProperty>{OpenLayers.Layer.PointTrack.TARGET_NODE} or {OpenLayers.Layer.PointTrack.SOURCE_NODE} optional. </div></div><div class=CToolTip id="tt73"><div class=CProperty>{Number} Maximum distance in pixels between clicks for a sequence of events  [...]
+<div class=CToolTip id="tt74"><div class=CProperty>{Object} When keepData is true, this is the parsed string sent to read.</div></div><div class=CToolTip id="tt75"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt76"><div class=CProperty>{OpenLayers.Layer.PointTrack.TARGET_NODE} or {OpenLayers.Layer.PointTrack.SOURCE_NODE} optional. </div></div><div class=CToolTip id="tt77"><div class=CProperty>The regex to be used for validating dates. </div></div><div class=CToolTip i [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt128"><div class=CProperty>{<OpenLayers.Easing>(Function)} Easing equation used for the animation Defaultly set to OpenLayers.Easing.Expo.easeOut</div></div><div class=CToolTip id="tt129"><div class=CProperty>{Boolean} Allow splits given intersection of edges only. </div></div><div class=CToolTip id="tt130"><div class=CProperty>{String} Set this to some value to set when the mouse is outside the map.</div></div><div class=CToolTip id="tt131"><div class=CPro [...]
+<div class=CToolTip id="tt136"><div class=CProperty>{<OpenLayers.Easing>(Function)} Easing equation used for the animation Defaultly set to OpenLayers.Easing.Expo.easeOut</div></div><div class=CToolTip id="tt137"><div class=CProperty>{Boolean} Allow splits given intersection of edges only. </div></div><div class=CToolTip id="tt138"><div class=CProperty>{String} Set this to some value to set when the mouse is outside the map.</div></div><div class=CToolTip id="tt139"><div class=CPro [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties3.html b/doc/apidocs/index/Properties3.html
index 7deefec..532e1f4 100644
--- a/doc/apidocs/index/Properties3.html
+++ b/doc/apidocs/index/Properties3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="Properties4.html#I">I</a> · J · <a href="Properties4.html#K" [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="Properties4.html#I">I</a> · J · <a href="Properties4.html#K" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt175"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt176"><div class=CProperty>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  </div></div><div class=CToolTip id="tt177"><div class=CProperty>{OpenLayers.Feature.Vector} Feature currently available for transformation. </div></div><div class=CToolTip id="tt178"><div class=CProperty>{Function} Called after each fe [...]
+<div class=CToolTip id="tt184"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt185"><div class=CProperty>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  </div></div><div class=CToolTip id="tt186"><div class=CProperty>{OpenLayers.Feature.Vector} Feature currently available for transformation. </div></div><div class=CToolTip id="tt187"><div class=CProperty>{Function} Called after each fe [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt221"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt222"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt223"><div class=CProperty>{Object} Options to pass to the navigator’s geolocation API. </div></div><div class=CToolTip id="tt224"><div class=CProperty>{OpenLayers.Geometry}</div></div><div class=CToolTip id="tt225"><div class=CProperty>{String} Name of geometr [...]
+<div class=CToolTip id="tt233"><div class=CProperty>{Boolean} Calculate geodesic metrics instead of planar metrics. </div></div><div class=CToolTip id="tt234"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt235"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt236"><div class=CProperty>{Object} Options to pass to the navigator’s geolocation API. </div></div><div class=CToolTip id="tt237"><d [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt244"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt245"><div class=CProperty>{Boolean} Whether or not to handle right clicks. </div></div><div class=CToolTip id="tt246"><div class=CProperty>Defaults to ‘click’. </div></div><div class=CToolTip id="tt247"><div class=CProperty>{Object} Used to set non-default properties on the control’s handler</div></div><div class=CToolTip id="tt248"><div class=CProperty>{Object} Addi [...]
+<div class=CToolTip id="tt258"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt259"><div class=CProperty>{Boolean} Whether or not to handle right clicks. </div></div><div class=CToolTip id="tt260"><div class=CProperty>Defaults to ‘click’. </div></div><div class=CToolTip id="tt261"><div class=CProperty>{Object} Used to set non-default properties on the control’s handler</div></div><div class=CToolTip id="tt262"><div class=CProperty>{Object} Addi [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties4.html b/doc/apidocs/index/Properties4.html
index 4a5787c..a34197e 100644
--- a/doc/apidocs/index/Properties4.html
+++ b/doc/apidocs/index/Properties4.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="#I">I</a> · J &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="#I">I</a> · J &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt261"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt262"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt263"><div class=CProperty>{Boolean} Ignore dimensions higher than 2 when reading geometry coordinates.</div></div><div class=CToolTip id="tt264"><div class=CProperty>{String} The image format used for caching. </div></div><div class=CToolTip id="tt265"><div class=CProperty>{OpenLayers.Size}</div></div><div cla [...]
+<div class=CToolTip id="tt276"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt277"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt278"><div class=CProperty>{Boolean} Ignore dimensions higher than 2 when reading geometry coordinates.</div></div><div class=CToolTip id="tt279"><div class=CProperty>{String} The image format used for caching. </div></div><div class=CToolTip id="tt280"><div class=CProperty>{OpenLayers.Size}</div></div><div cla [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt296"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt297"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt298"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it alw [...]
+<div class=CToolTip id="tt312"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt313"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt314"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it alw [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt304"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt305"><div class=CProperty>{String} the format of the labels, default = ‘dm’. </div></div><div class=CToolTip id="tt306"><div class=CProperty>{Boolean} Should the graticule lines be labelled?. </div></div><div class=CToolTip id="tt307"><div class=CProperty>{symbolizer} the symbolizer used to render labels</div></div><div class=CToolTip id="tt308"><div class [...]
+<div class=CToolTip id="tt320"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt321"><div class=CProperty>{String} the format of the labels, default = ‘dm’. </div></div><div class=CToolTip id="tt322"><div class=CProperty>{Boolean} Should the graticule lines be labelled?. </div></div><div class=CToolTip id="tt323"><div class=CProperty>{symbolizer} the symbolizer used to render labels</div></div><div class=CToolTip id="tt324"><div class [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties5.html b/doc/apidocs/index/Properties5.html
index 23a83d0..a23c4bc 100644
--- a/doc/apidocs/index/Properties5.html
+++ b/doc/apidocs/index/Properties5.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt333"><div class=CProperty>{OpenLayers.Map} This variable is set when the layer is added to the map, via the accessor function setMap().</div></div><div class=CToolTip id="tt334"><div class=CProperty>{Object} An object containing any non-default properties to be sent to the overview map’s map constructor. </div></div><div class=CToolTip id="tt335"><div class=CProperty>{Array(OpenLayers.Marker)} internal marker list</div></div><div class=CToolTip id="tt336"> [...]
+<div class=CToolTip id="tt352"><div class=CProperty>{OpenLayers.Map} This variable is set when the layer is added to the map, via the accessor function setMap().</div></div><div class=CToolTip id="tt353"><div class=CProperty>{Object} An object containing any non-default properties to be sent to the overview map’s map constructor. </div></div><div class=CToolTip id="tt354"><div class=CProperty>{Array(OpenLayers.Marker)} internal marker list</div></div><div class=CToolTip id="tt355"> [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt379"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt380"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt381"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt382"><div class=CProperty>{String} The layer name. </div></div><div class=CToolTip id="tt383"><div class=CProperty>{String} name of this rule</div></div><div class=CToolTip id="tt384"><div class=CProperty>{String}</ [...]
+<div class=CToolTip id="tt402"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt403"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt404"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt405"><div class=CProperty>{String} The layer name. </div></div><div class=CToolTip id="tt406"><div class=CProperty>{String} name of this rule</div></div><div class=CToolTip id="tt407"><div class=CProperty>{String}</ [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt396"><div class=CProperty>{DOMelement|String} The DOM element to handle keys for. </div></div><div class=CToolTip id="tt397"><div class=CProperty>{Function} Define this function if you want to know when a feature is done dragging. </div></div><div class=CToolTip id="tt398"><div class=CProperty>{Function} Define this function if you want to know about each move of a feature. </div></div><div class=CToolTip id="tt399"><div class=CProperty>{Function} Define this fu [...]
+<div class=CToolTip id="tt419"><div class=CProperty>{DOMelement|String} The DOM element to handle keys for. </div></div><div class=CToolTip id="tt420"><div class=CProperty>{Function} Define this function if you want to know when a feature is done dragging. </div></div><div class=CToolTip id="tt421"><div class=CProperty>{Function} Define this function if you want to know about each move of a feature. </div></div><div class=CToolTip id="tt422"><div class=CProperty>{Function} Define this fu [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties6.html b/doc/apidocs/index/Properties6.html
index 9b65b13..c0fcbd2 100644
--- a/doc/apidocs/index/Properties6.html
+++ b/doc/apidocs/index/Properties6.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt415"><div class=CProperty>{Boolean} Set this property to false not to display the pan icons. </div></div><div class=CToolTip id="tt416"><div class=CProperty>{Boolean} When drawn, pan map such that the entire popup is visible in the current viewport (if necessary). </div></div><div class=CToolTip id="tt417"><div class=CProperty>{Boolean} Framed Cloud does pan into view by default.</div></div><div class=CToolTip id="tt418"><div class=CProperty>{Function} The Easin [...]
+<div class=CToolTip id="tt438"><div class=CProperty>{Boolean} Set this property to false not to display the pan icons. </div></div><div class=CToolTip id="tt439"><div class=CProperty>{Boolean} When drawn, pan map such that the entire popup is visible in the current viewport (if necessary). </div></div><div class=CToolTip id="tt440"><div class=CProperty>{Boolean} Framed Cloud does pan into view by default.</div></div><div class=CToolTip id="tt441"><div class=CProperty>{Function} The Easin [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt449"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt450"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt474"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt475"><div class=CProperty>{Boolean} If true, filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt476"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt451"><div class=CProperty>{Float} Optional radius in map units of the regular polygon. </div></div><div class=CToolTip id="tt452"><div class=CProperty>{Float} The ratio of the feature relative to the ratio the time the feature was set. </div></div><div class=CToolTip id="tt453"><div class=CProperty>{Float} Used only when in single-tile mode, this specifies the ratio of the size of the single tile to the size of the map.</div></div><div class=CToolTip id="tt454"> [...]
+<div class=CToolTip id="tt477"><div class=CProperty>{Float} Optional radius in map units of the regular polygon. </div></div><div class=CToolTip id="tt478"><div class=CProperty>{Float} The ratio of the feature relative to the ratio the time the feature was set. </div></div><div class=CToolTip id="tt479"><div class=CProperty>{Float} Used only when in single-tile mode, this specifies the ratio of the size of the single tile to the size of the map. </div></div><div class=CToolTip id="tt480" [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties7.html b/doc/apidocs/index/Properties7.html
index c2f9eac..da45dc8 100644
--- a/doc/apidocs/index/Properties7.html
+++ b/doc/apidocs/index/Properties7.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt480"><div class=CProperty>{Boolean} If set to true, the active state of this panel’s controls will be stored on panel deactivation, and restored on reactivation. </div></div><div class=CToolTip id="tt481"><div class=CProperty>{Float} The scale of the feature, relative to the scale the time the feature was set. </div></div><div class=CToolTip id="tt482"><div class=CProperty>{Array}  An array of map scales in descending order. </div></div><div class=CToolTip [...]
+<div class=CToolTip id="tt504"><div class=CProperty>{Boolean} If set to true, the active state of this panel’s controls will be stored on panel deactivation, and restored on reactivation. </div></div><div class=CToolTip id="tt505"><div class=CProperty>{Float} The scale of the feature, relative to the scale the time the feature was set. </div></div><div class=CToolTip id="tt506"><div class=CProperty>{Array}  An array of map scales in descending order. </div></div><div class=CToolTip [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt549"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt550"><div class=CProperty>{OpenLayers.Filter} Optional filter that will be evaluated to determine if a feature from the target layer is eligible for splitting.</div></div><div class=CToolTip id="tt551"><div class=CProperty>{Integer} The maximum size of the grid in pixels on the map</div></div><div class=CToolTip id="tt552"><div class=CPr [...]
+<div class=CToolTip id="tt573"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt574"><div class=CProperty>{OpenLayers.Filter} Optional filter that will be evaluated to determine if a feature from the target layer is eligible for splitting.</div></div><div class=CToolTip id="tt575"><div class=CProperty>{Integer} The maximum size of the grid in pixels on the map</div></div><div class=CToolTip id="tt576"><div class=CPr [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/index/Properties8.html b/doc/apidocs/index/Properties8.html
index f1349d4..337754a 100644
--- a/doc/apidocs/index/Properties8.html
+++ b/doc/apidocs/index/Properties8.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,29 +11,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties.html#C">C</a> · <a href="Properties2.html#D">D</a> · <a href="Properties2.html#E">E</a> · <a href="Properties3.html#F">F</a> · <a href="Properties3.html#G">G</a> · <a href="Properties3.html#H">H</a> · <a href="Properties4.html#I">I</a>  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt586"><div class=CProperty>{String} The layer map units. </div></div><div class=CToolTip id="tt587"><div class=CProperty>{String} The map units. </div></div><div class=CToolTip id="tt588"><div class=CProperty>{Array} Array with browsers, which should use the HTTP-GET protocol instead of HTTP-POST for fetching tiles from a WMS . </div></div><div class=CToolTip id="tt589"><div class=CProperty>{Boolean} true if update operations are done with POST requests defaults  [...]
+<div class=CToolTip id="tt611"><div class=CProperty>{String} The layer map units. </div></div><div class=CToolTip id="tt612"><div class=CProperty>{String} The map units. </div></div><div class=CToolTip id="tt613"><div class=CProperty>{Array} Array with browsers, which should use the HTTP-GET protocol instead of HTTP-POST for fetching tiles from a WMS . </div></div><div class=CToolTip id="tt614"><div class=CProperty>{Boolean} true if update operations are done with POST requests defaults  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt605"><div class=CProperty>{Number} or {String} comparison value for binary comparisons. </div></div><div class=CToolTip id="tt606"><div class=CProperty>{OpenLayers.Bounds || OpenLayers.Geometry} The bounds or geometry to be used by the filter. </div></div><div class=CToolTip id="tt607"><div class=CProperty>{String} Specify a version string if one is known.</div></div><div class=CToolTip id="tt608"><div class=CProperty>{String} The renderIntent to use for vertice [...]
+<div class=CToolTip id="tt631"><div class=CProperty>{Number} or {String} comparison value for binary comparisons. </div></div><div class=CToolTip id="tt632"><div class=CProperty>{OpenLayers.Bounds || OpenLayers.Geometry} The bounds or geometry to be used by the filter. </div></div><div class=CToolTip id="tt633"><div class=CProperty>{Object} Additional parameters that will be added to the request, for WMS implementations that support them. </div></div><div class=CToolTip id="tt634"><div c [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt612"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt613"><div class=CProperty>{Boolean} If true, position will be update regularly.</div></div><div class=CToolTip id="tt614"><div class=CProperty>{Object} Cache to use for storing parsed results from OpenLayers.Format.WFSDescribeFeatureType.read. </div></div><div class=CToolTip id="tt615"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt616"><div class=CProperty>{Boolean [...]
+<div class=CToolTip id="tt639"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt640"><div class=CProperty>{Boolean} If true, position will be update regularly.</div></div><div class=CToolTip id="tt641"><div class=CProperty>{Object} Cache to use for storing parsed results from OpenLayers.Format.WFSDescribeFeatureType.read. </div></div><div class=CToolTip id="tt642"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt643"><div class=CProperty>{Boolean [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt620"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt621"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt622"><div class=CProperty>{Boolean} Order of the GML coordinate: true:(x,y) or false:(y,x) For GeoRSS the default is (y,x), therefore: false</div></div><div class=CToolTip id="tt623"><div class=CProperty>{Boolean} Order of the GML coordinate: true:(x,y) or false:(y,x) For GeoRSS the default is (y,x), ther [...]
+<div class=CToolTip id="tt647"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt648"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt649"><div class=CProperty>{Boolean} Order of the GML coordinate: true:(x,y) or false:(y,x) For GeoRSS the default is (y,x), therefore: false</div></div><div class=CToolTip id="tt650"><div class=CProperty>{Boolean} Order of the GML coordinate: true:(x,y) or false:(y,x) For GeoRSS the default is (y,x), ther [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt629"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt630"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt631"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt656"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt657"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt658"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt632"><div class=CProperty>{Number} The zIndex determines the rendering order for a symbolizer. </div></div><div class=CToolTip id="tt633"><div class=CProperty>{Boolean} Whether the user can draw a box to zoom</div></div><div class=CToolTip id="tt634"><div class=CProperty>{Integer} OpenLayers.Handler key code of the key, which has to be pressed, while drawing the zoom box with the mouse on the screen. </div></div><div class=CToolTip id="tt635"><div class=CPropert [...]
+<div class=CToolTip id="tt659"><div class=CProperty>{Number} The zIndex determines the rendering order for a symbolizer. </div></div><div class=CToolTip id="tt660"><div class=CProperty>{Boolean} Whether the user can draw a box to zoom</div></div><div class=CToolTip id="tt661"><div class=CProperty>{Integer} OpenLayers.Handler key code of the key, which has to be pressed, while drawing the zoom box with the mouse on the screen. </div></div><div class=CToolTip id="tt662"><div class=CPropert [...]
 
 </div><!--Index-->
 
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/apidocs/javascript/searchdata.js b/doc/apidocs/javascript/searchdata.js
index 80385d9..a5de799 100644
--- a/doc/apidocs/javascript/searchdata.js
+++ b/doc/apidocs/javascript/searchdata.js
@@ -71,7 +71,7 @@ var indexSectionsWithContent = {
       "G": true,
       "H": true,
       "I": true,
-      "J": false,
+      "J": true,
       "K": false,
       "L": true,
       "M": true,
@@ -154,7 +154,7 @@ var indexSectionsWithContent = {
       "Numbers": false,
       "A": false,
       "B": false,
-      "C": false,
+      "C": true,
       "D": false,
       "E": false,
       "F": false,
diff --git a/doc/apidocs/search/FilesC.html b/doc/apidocs/search/ClassesC.html
similarity index 72%
copy from doc/apidocs/search/FilesC.html
copy to doc/apidocs/search/ClassesC.html
index 14f3a41..151f1e0 100644
--- a/doc/apidocs/search/FilesC.html
+++ b/doc/apidocs/search/ClassesC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Class_perjs><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Class-js.html#Class.js" target=_parent class=ISymbol>Class.js</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Class><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Class" target=_parent class=ISymbol>Class</a>, <span class=IParent>OpenLayers</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ClassesO.html b/doc/apidocs/search/ClassesO.html
index 15027b1..3da740c 100644
--- a/doc/apidocs/search/ClassesO.html
+++ b/doc/apidocs/search/ClassesO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OpenLayers><div class=IEntry><a href="../files/OpenLayers-js.html#OpenLayers" target=_parent class=ISymbol>OpenLayers</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Ajax" target=_parent class=ISymbol>OpenLayers.Ajax</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax_perBas [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OpenLayers><div class=IEntry><a href="../files/OpenLayers-js.html#OpenLayers" target=_parent class=ISymbol>OpenLayers</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Ajax" target=_parent class=ISymbol>OpenLayers.Ajax</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax_perBas [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ClassesS.html b/doc/apidocs/search/ClassesS.html
index 01acf6a..ee73643 100644
--- a/doc/apidocs/search/ClassesS.html
+++ b/doc/apidocs/search/ClassesS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ClassesU.html b/doc/apidocs/search/ClassesU.html
index fad197a..991bc26 100644
--- a/doc/apidocs/search/ClassesU.html
+++ b/doc/apidocs/search/ClassesU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsB.html b/doc/apidocs/search/ConstantsB.html
index bf08275..3efce76 100644
--- a/doc/apidocs/search/ConstantsB.html
+++ b/doc/apidocs/search/ConstantsB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsC.html b/doc/apidocs/search/ConstantsC.html
index ec54ff0..8fd58c8 100644
--- a/doc/apidocs/search/ConstantsC.html
+++ b/doc/apidocs/search/ConstantsC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CANVAS_undSUPPORTED><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.CANVAS_SUPPORTED" target=_parent class=ISymbol>CANVAS_SUPPORTED</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_CORNER_undSIZE><div class=IEntry><a href="../files/OpenLayers/Popup/AnchoredBubble-js.html#OpenLayers.Popup.AnchoredBubble.CORNER_SIZE" ta [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CANVAS_undSUPPORTED><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.CANVAS_SUPPORTED" target=_parent class=ISymbol>CANVAS_SUPPORTED</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_CORNER_undSIZE><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Popup.AnchoredBubble.CORNER_SIZE" target=_parent class=IS [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstantsD.html b/doc/apidocs/search/ConstantsD.html
index f720b82..2d13307 100644
--- a/doc/apidocs/search/ConstantsD.html
+++ b/doc/apidocs/search/ConstantsD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsF.html b/doc/apidocs/search/ConstantsF.html
index c9f7d11..0576faf 100644
--- a/doc/apidocs/search/ConstantsF.html
+++ b/doc/apidocs/search/ConstantsF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsI.html b/doc/apidocs/search/ConstantsI.html
index 85e665e..69ea040 100644
--- a/doc/apidocs/search/ConstantsI.html
+++ b/doc/apidocs/search/ConstantsI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_IFrame><div class=IEntry><a href="../files/OpenLayers/Tile/Image/IFrame-js.html#OpenLayers.Tile.Image.IFrame" target=_parent class=ISymbol>IFrame</a>, <span class=IParent>OpenLayers.<wbr>Tile.<wbr>Image</span></div></div><div class=SRResult id=SR_IMAGE_undEXTENSIONS><div class=IEntry><a href="../files/OpenLayers/Layer/KaMapCache-js.html#OpenLayers.Layer.KaMap [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_IFrame><div class=IEntry><a href="../files/OpenLayers/Tile/Image/IFrame-js.html#OpenLayers.Tile.Image.IFrame" target=_parent class=ISymbol>IFrame</a>, <span class=IParent>OpenLayers.<wbr>Tile.<wbr>Image</span></div></div><div class=SRResult id=SR_IMAGE><div class=IEntry><a href="../files/OpenLayers/Tile/Image-js.html#OpenLayers.Tile.Image.OpenLayers.Tile.Imag [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstantsK.html b/doc/apidocs/search/ConstantsK.html
index 4af0fb4..9031e74 100644
--- a/doc/apidocs/search/ConstantsK.html
+++ b/doc/apidocs/search/ConstantsK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsL.html b/doc/apidocs/search/ConstantsL.html
index 08283ba..7b21800 100644
--- a/doc/apidocs/search/ConstantsL.html
+++ b/doc/apidocs/search/ConstantsL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsM.html b/doc/apidocs/search/ConstantsM.html
index f595631..9e38a90 100644
--- a/doc/apidocs/search/ConstantsM.html
+++ b/doc/apidocs/search/ConstantsM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_MAX_undPIXEL><div class=IEntry><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.MAX_PIXEL" target=_parent class=ISymbol>MAX_PIXEL</a>, <span class=IParent>OpenLayers.<wbr>Renderer.SVG</span></div></div><div class=SRResult id=SR_MAX_undZOOM_undLEVEL><div class=IEntry><a href="javascript:searchResults.Toggle('SR_MAX_undZOOM_undLEVEL')"  [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_MAX_undPIXEL><div class=IEntry><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.MAX_PIXEL" target=_parent class=ISymbol>MAX_PIXEL</a>, <span class=IParent>OpenLayers.<wbr>Renderer.SVG</span></div></div><div class=SRResult id=SR_MAX_undZOOM_undLEVEL><div class=IEntry><a href="javascript:searchResults.Toggle('SR_MAX_undZOOM_undLEVEL')"  [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstantsO.html b/doc/apidocs/search/ConstantsO.html
index 2abd281..e3635fe 100644
--- a/doc/apidocs/search/ConstantsO.html
+++ b/doc/apidocs/search/ConstantsO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsR.html b/doc/apidocs/search/ConstantsR.html
index ce6a86a..9115d11 100644
--- a/doc/apidocs/search/ConstantsR.html
+++ b/doc/apidocs/search/ConstantsR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsS.html b/doc/apidocs/search/ConstantsS.html
index 9ffbedc..eacac96 100644
--- a/doc/apidocs/search/ConstantsS.html
+++ b/doc/apidocs/search/ConstantsS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsT.html b/doc/apidocs/search/ConstantsT.html
index d5aef7e..7211c9a 100644
--- a/doc/apidocs/search/ConstantsT.html
+++ b/doc/apidocs/search/ConstantsT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsU.html b/doc/apidocs/search/ConstantsU.html
index ea76246..598cd6b 100644
--- a/doc/apidocs/search/ConstantsU.html
+++ b/doc/apidocs/search/ConstantsU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsV.html b/doc/apidocs/search/ConstantsV.html
index f39a23c..8ce96d2 100644
--- a/doc/apidocs/search/ConstantsV.html
+++ b/doc/apidocs/search/ConstantsV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsX.html b/doc/apidocs/search/ConstantsX.html
index 747d031..6cb3a99 100644
--- a/doc/apidocs/search/ConstantsX.html
+++ b/doc/apidocs/search/ConstantsX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsY.html b/doc/apidocs/search/ConstantsY.html
index f973570..591559d 100644
--- a/doc/apidocs/search/ConstantsY.html
+++ b/doc/apidocs/search/ConstantsY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsZ.html b/doc/apidocs/search/ConstantsZ.html
index 24fc58d..3cf7027 100644
--- a/doc/apidocs/search/ConstantsZ.html
+++ b/doc/apidocs/search/ConstantsZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorA.html b/doc/apidocs/search/ConstructorA.html
index 3ac1528..e0f7a9e 100644
--- a/doc/apidocs/search/ConstructorA.html
+++ b/doc/apidocs/search/ConstructorA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Anchored><div class=IEntry><a href="../files/OpenLayers/Popup/Anchored-js.html#OpenLayers.Popup.Anchored.OpenLayers.Popup.Anchored" target=_parent class=ISymbol>Anchored</a>, <span class=IParent>OpenLayers.<wbr>Popup.<wbr>Anchored.<wbr>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_AnchoredBubble><div class=IEntry><a href="../files/OpenLaye [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Anchored><div class=IEntry><a href="../files/OpenLayers/Popup/Anchored-js.html#OpenLayers.Popup.Anchored.OpenLayers.Popup.Anchored" target=_parent class=ISymbol>Anchored</a>, <span class=IParent>OpenLayers.<wbr>Popup.<wbr>Anchored.<wbr>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_AnchoredBubble><div class=IEntry><a href="../files/deprecat [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorB.html b/doc/apidocs/search/ConstructorB.html
index 8bb7fd2..a92b765 100644
--- a/doc/apidocs/search/ConstructorB.html
+++ b/doc/apidocs/search/ConstructorB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorC.html b/doc/apidocs/search/ConstructorC.html
index 2c39af6..618cb48 100644
--- a/doc/apidocs/search/ConstructorC.html
+++ b/doc/apidocs/search/ConstructorC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CacheRead><div class=IEntry><a href="../files/OpenLayers/Control/CacheRead-js.html#OpenLayers.Control.CacheRead.OpenLayers.Control.CacheRead" target=_parent class=ISymbol>CacheRead</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheRead.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_CacheWrite><div class=IEntry><a href="../fi [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CacheRead><div class=IEntry><a href="../files/OpenLayers/Control/CacheRead-js.html#OpenLayers.Control.CacheRead.OpenLayers.Control.CacheRead" target=_parent class=ISymbol>CacheRead</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheRead.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_CacheWrite><div class=IEntry><a href="../fi [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorD.html b/doc/apidocs/search/ConstructorD.html
index b9fd6d0..036bac5 100644
--- a/doc/apidocs/search/ConstructorD.html
+++ b/doc/apidocs/search/ConstructorD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorE.html b/doc/apidocs/search/ConstructorE.html
index f8521ba..4dcb7bd 100644
--- a/doc/apidocs/search/ConstructorE.html
+++ b/doc/apidocs/search/ConstructorE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_EditingToolbar><div class=IEntry><a href="../files/OpenLayers/Control/EditingToolbar-js.html#OpenLayers.Control.EditingToolbar.OpenLayers.Control.EditingToolbar" target=_parent class=ISymbol>EditingToolbar</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>EditingToolbar.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_Elements><div [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_EditingToolbar><div class=IEntry><a href="../files/OpenLayers/Control/EditingToolbar-js.html#OpenLayers.Control.EditingToolbar.OpenLayers.Control.EditingToolbar" target=_parent class=ISymbol>EditingToolbar</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>EditingToolbar.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_Elements><div [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorF.html b/doc/apidocs/search/ConstructorF.html
index 6e0b11b..5ea4f99 100644
--- a/doc/apidocs/search/ConstructorF.html
+++ b/doc/apidocs/search/ConstructorF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Feature><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Feature')" class=ISymbol>Feature</a><div class=ISubIndex><a href="../files/OpenLayers/Feature-js.html#OpenLayers.Feature.OpenLayers.Feature" target=_parent class=IParent>OpenLayers.<wbr>Feature.<wbr>OpenLayers</a><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Featu [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Feature><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Feature')" class=ISymbol>Feature</a><div class=ISubIndex><a href="../files/OpenLayers/Feature-js.html#OpenLayers.Feature.OpenLayers.Feature" target=_parent class=IParent>OpenLayers.<wbr>Feature.<wbr>OpenLayers</a><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Featu [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorG.html b/doc/apidocs/search/ConstructorG.html
index 2b01242..fe2e254 100644
--- a/doc/apidocs/search/ConstructorG.html
+++ b/doc/apidocs/search/ConstructorG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorH.html b/doc/apidocs/search/ConstructorH.html
index a10eb1b..fe2e09b 100644
--- a/doc/apidocs/search/ConstructorH.html
+++ b/doc/apidocs/search/ConstructorH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorI.html b/doc/apidocs/search/ConstructorI.html
index 67c1e34..edbba61 100644
--- a/doc/apidocs/search/ConstructorI.html
+++ b/doc/apidocs/search/ConstructorI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorJ.html b/doc/apidocs/search/ConstructorJ.html
index 14b852f..e7ad66b 100644
--- a/doc/apidocs/search/ConstructorJ.html
+++ b/doc/apidocs/search/ConstructorJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorK.html b/doc/apidocs/search/ConstructorK.html
index 645b059..65bc3d2 100644
--- a/doc/apidocs/search/ConstructorK.html
+++ b/doc/apidocs/search/ConstructorK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorL.html b/doc/apidocs/search/ConstructorL.html
index e23429a..afaf76d 100644
--- a/doc/apidocs/search/ConstructorL.html
+++ b/doc/apidocs/search/ConstructorL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorM.html b/doc/apidocs/search/ConstructorM.html
index 81ef9b1..d21b1a5 100644
--- a/doc/apidocs/search/ConstructorM.html
+++ b/doc/apidocs/search/ConstructorM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorN.html b/doc/apidocs/search/ConstructorN.html
index 1e93f85..7275722 100644
--- a/doc/apidocs/search/ConstructorN.html
+++ b/doc/apidocs/search/ConstructorN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorO.html b/doc/apidocs/search/ConstructorO.html
index aaf416d..1f6cdea 100644
--- a/doc/apidocs/search/ConstructorO.html
+++ b/doc/apidocs/search/ConstructorO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OGCExceptionReport><div class=IEntry><a href="../files/OpenLayers/Format/OGCExceptionReport-js.html#OpenLayers.Format.OGCExceptionReport.OpenLayers.Format.OGCExceptionReport" target=_parent class=ISymbol>OGCExceptionReport</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport.<wbr>OpenLayers.<wbr>Format</span></div></div><div class=SRResult  [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OGCExceptionReport><div class=IEntry><a href="../files/OpenLayers/Format/OGCExceptionReport-js.html#OpenLayers.Format.OGCExceptionReport.OpenLayers.Format.OGCExceptionReport" target=_parent class=ISymbol>OGCExceptionReport</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport.<wbr>OpenLayers.<wbr>Format</span></div></div><div class=SRResult  [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorP.html b/doc/apidocs/search/ConstructorP.html
index b87785f..5e55f32 100644
--- a/doc/apidocs/search/ConstructorP.html
+++ b/doc/apidocs/search/ConstructorP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorR.html b/doc/apidocs/search/ConstructorR.html
index f209db9..9b916ed 100644
--- a/doc/apidocs/search/ConstructorR.html
+++ b/doc/apidocs/search/ConstructorR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorS.html b/doc/apidocs/search/ConstructorS.html
index a266ee9..63559db 100644
--- a/doc/apidocs/search/ConstructorS.html
+++ b/doc/apidocs/search/ConstructorS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorT.html b/doc/apidocs/search/ConstructorT.html
index af4af3d..c6e04e0 100644
--- a/doc/apidocs/search/ConstructorT.html
+++ b/doc/apidocs/search/ConstructorT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Text><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Text')" class=ISymbol>Text</a><div class=ISubIndex><a href="../files/OpenLayers/Format/Text-js.html#OpenLayers.Format.Text.OpenLayers.Format.Text" target=_parent class=IParent>OpenLayers.<wbr>Format.<wbr>Text.<wbr>OpenLayers.<wbr>Format</a><a href="../files/OpenLayers/Layer/Text-js.html#OpenL [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Text><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Text')" class=ISymbol>Text</a><div class=ISubIndex><a href="../files/OpenLayers/Format/Text-js.html#OpenLayers.Format.Text.OpenLayers.Format.Text" target=_parent class=IParent>OpenLayers.<wbr>Format.<wbr>Text.<wbr>OpenLayers.<wbr>Format</a><a href="../files/OpenLayers/Layer/Text-js.html#OpenL [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorU.html b/doc/apidocs/search/ConstructorU.html
index 1f44cd3..8f0bad3 100644
--- a/doc/apidocs/search/ConstructorU.html
+++ b/doc/apidocs/search/ConstructorU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorV.html b/doc/apidocs/search/ConstructorV.html
index 25c2b0c..1546a28 100644
--- a/doc/apidocs/search/ConstructorV.html
+++ b/doc/apidocs/search/ConstructorV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorW.html b/doc/apidocs/search/ConstructorW.html
index 307f525..f3e1dc4 100644
--- a/doc/apidocs/search/ConstructorW.html
+++ b/doc/apidocs/search/ConstructorW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_WCSGetCoverage><div class=IEntry><a href="../files/OpenLayers/Format/WCSGetCoverage-js.html#OpenLayers.Format.WCSGetCoverage_version_1.1.0.OpenLayers.Format.WCSGetCoverage" target=_parent class=ISymbol>WCSGetCoverage</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>WCSGetCoverage version 1.<wbr>1.0.<wbr>OpenLayers.<wbr>Format</span></div></div><div class= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_WCSCapabilities><div class=IEntry><a href="../files/OpenLayers/Format/WCSCapabilities-js.html#OpenLayers.Format.WCSCapabilities.OpenLayers.Format.WCSCapabilities" target=_parent class=ISymbol>WCSCapabilities</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.<wbr>OpenLayers.<wbr>Format</span></div></div><div class=SRResult id=SR_WCSGetCovera [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstructorX.html b/doc/apidocs/search/ConstructorX.html
index 96fbd57..6ea43f1 100644
--- a/doc/apidocs/search/ConstructorX.html
+++ b/doc/apidocs/search/ConstructorX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorY.html b/doc/apidocs/search/ConstructorY.html
index ebb1ba3..27e9e75 100644
--- a/doc/apidocs/search/ConstructorY.html
+++ b/doc/apidocs/search/ConstructorY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstructorZ.html b/doc/apidocs/search/ConstructorZ.html
index 24abb97..d757d9e 100644
--- a/doc/apidocs/search/ConstructorZ.html
+++ b/doc/apidocs/search/ConstructorZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FilesA.html b/doc/apidocs/search/FilesA.html
index 8fc8110..afd78fd 100644
--- a/doc/apidocs/search/FilesA.html
+++ b/doc/apidocs/search/FilesA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FilesC.html b/doc/apidocs/search/FilesC.html
index 14f3a41..cc62983 100644
--- a/doc/apidocs/search/FilesC.html
+++ b/doc/apidocs/search/FilesC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FilesD.html b/doc/apidocs/search/FilesD.html
index c25e0b4..e172ff7 100644
--- a/doc/apidocs/search/FilesD.html
+++ b/doc/apidocs/search/FilesD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FilesO.html b/doc/apidocs/search/FilesO.html
index 4eccc8f..34a3b00 100644
--- a/doc/apidocs/search/FilesO.html
+++ b/doc/apidocs/search/FilesO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FilesS.html b/doc/apidocs/search/FilesS.html
index fd68300..00dbd6f 100644
--- a/doc/apidocs/search/FilesS.html
+++ b/doc/apidocs/search/FilesS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FilesV.html b/doc/apidocs/search/FilesV.html
index bd6d556..82a5980 100644
--- a/doc/apidocs/search/FilesV.html
+++ b/doc/apidocs/search/FilesV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsA.html b/doc/apidocs/search/FunctionsA.html
index 2dd1774..4c1ba3b 100644
--- a/doc/apidocs/search/FunctionsA.html
+++ b/doc/apidocs/search/FunctionsA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol.HTTP</a><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protocol.Script.abort" target= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol.HTTP</a><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protocol.Script.abort" target= [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsB.html b/doc/apidocs/search/FunctionsB.html
index 0ebc89a..cdc36c5 100644
--- a/doc/apidocs/search/FunctionsB.html
+++ b/doc/apidocs/search/FunctionsB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsC.html b/doc/apidocs/search/FunctionsC.html
index fad3ed5..dccef27 100644
--- a/doc/apidocs/search/FunctionsC.html
+++ b/doc/apidocs/search/FunctionsC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_calculateBounds><div class=IEntry><a href="javascript:searchResults.Toggle('SR_calculateBounds')" class=ISymbol>calculateBounds</a><div class=ISubIndex><a href="../files/OpenLayers/Geometry-js.html#OpenLayers.Geometry.calculateBounds" target=_parent class=IParent>OpenLayers.<wbr>Geometry</a><a href="../files/OpenLayers/Geometry/Collection-js.html#OpenLayers.G [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_calculateBounds><div class=IEntry><a href="javascript:searchResults.Toggle('SR_calculateBounds')" class=ISymbol>calculateBounds</a><div class=ISubIndex><a href="../files/OpenLayers/Geometry-js.html#OpenLayers.Geometry.calculateBounds" target=_parent class=IParent>OpenLayers.<wbr>Geometry</a><a href="../files/OpenLayers/Geometry/Collection-js.html#OpenLayers.G [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsD.html b/doc/apidocs/search/FunctionsD.html
index b792677..8918888 100644
--- a/doc/apidocs/search/FunctionsD.html
+++ b/doc/apidocs/search/FunctionsD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_deactivate><div class=IEntry><a href="javascript:searchResults.Toggle('SR_deactivate')" class=ISymbol>deactivate</a><div class=ISubIndex><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.deactivate" target=_parent class=IParent>OpenLayers.<wbr>Control</a><a href="../files/OpenLayers/Control/DragFeature-js.html#OpenLayers.Control.DragFeature.deac [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_deactivate><div class=IEntry><a href="javascript:searchResults.Toggle('SR_deactivate')" class=ISymbol>deactivate</a><div class=ISubIndex><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.deactivate" target=_parent class=IParent>OpenLayers.<wbr>Control</a><a href="../files/OpenLayers/Control/DragFeature-js.html#OpenLayers.Control.DragFeature.deac [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsE.html b/doc/apidocs/search/FunctionsE.html
index 05057b8..97a4d85 100644
--- a/doc/apidocs/search/FunctionsE.html
+++ b/doc/apidocs/search/FunctionsE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_equals><div class=IEntry><a href="javascript:searchResults.Toggle('SR_equals')" class=ISymbol>equals</a><div class=ISubIndex><a href="../files/OpenLayers/Geometry/Collection-js.html#OpenLayers.Geometry.Collection.equals" target=_parent class=IParent>OpenLayers.<wbr>Geometry.<wbr>Collection</a><a href="../files/OpenLayers/Geometry/Point-js.html#OpenLayers.Geom [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_encode><div class=IEntry><a href="../files/OpenLayers/Format/EncodedPolyline-js.html#OpenLayers.Format.EncodedPolyline.encode" target=_parent class=ISymbol>encode</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>EncodedPolyline</span></div></div><div class=SRResult id=SR_encodeDeltas><div class=IEntry><a href="../files/OpenLayers/Format/EncodedPolyline-js [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsF.html b/doc/apidocs/search/FunctionsF.html
index 62b7c78..117a8ae 100644
--- a/doc/apidocs/search/FunctionsF.html
+++ b/doc/apidocs/search/FunctionsF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsG.html b/doc/apidocs/search/FunctionsG.html
index 3d7f6f7..f01f424 100644
--- a/doc/apidocs/search/FunctionsG.html
+++ b/doc/apidocs/search/FunctionsG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_GET><div class=IEntry><a href="../files/OpenLayers/Request-js.html#OpenLayers.Request.GET" target=_parent class=ISymbol>GET</a>, <span class=IParent>OpenLayers.<wbr>Request</span></div></div><div class=SRResult id=SR_getArea><div class=IEntry><a href="javascript:searchResults.Toggle('SR_getArea')" class=ISymbol>getArea</a><div class=ISubIndex><a href="../file [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_GET><div class=IEntry><a href="../files/OpenLayers/Request-js.html#OpenLayers.Request.GET" target=_parent class=ISymbol>GET</a>, <span class=IParent>OpenLayers.<wbr>Request</span></div></div><div class=SRResult id=SR_getArea><div class=IEntry><a href="javascript:searchResults.Toggle('SR_getArea')" class=ISymbol>getArea</a><div class=ISubIndex><a href="../file [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsH.html b/doc/apidocs/search/FunctionsH.html
index f7dcdd6..adb6dde 100644
--- a/doc/apidocs/search/FunctionsH.html
+++ b/doc/apidocs/search/FunctionsH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsI.html b/doc/apidocs/search/FunctionsI.html
index 365b443..23ee4e7 100644
--- a/doc/apidocs/search/FunctionsI.html
+++ b/doc/apidocs/search/FunctionsI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/ConstantsX.html b/doc/apidocs/search/FunctionsJ.html
similarity index 69%
copy from doc/apidocs/search/ConstantsX.html
copy to doc/apidocs/search/FunctionsJ.html
index 747d031..4acac2e 100644
--- a/doc/apidocs/search/ConstantsX.html
+++ b/doc/apidocs/search/FunctionsJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_X><div class=IEntry><a href="../files/OpenLayers/Control/PanZoom-js.html#OpenLayers.Control.PanZoom.X" target=_parent class=ISymbol>X</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>PanZoom</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_js><div class=IEntry><a href="../files/OpenLayers/Util/vendorPrefix-js.html#OpenLayers.Util.vendorPrefix.js" target=_parent class=ISymbol>js</a>, <span class=IParent>OpenLayers.<wbr>Util.<wbr>vendorPrefix</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsL.html b/doc/apidocs/search/FunctionsL.html
index 1606fe3..d412faf 100644
--- a/doc/apidocs/search/FunctionsL.html
+++ b/doc/apidocs/search/FunctionsL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsM.html b/doc/apidocs/search/FunctionsM.html
index ca382a1..17d7967 100644
--- a/doc/apidocs/search/FunctionsM.html
+++ b/doc/apidocs/search/FunctionsM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_mergeNewParams><div class=IEntry><a href="javascript:searchResults.Toggle('SR_mergeNewParams')" class=ISymbol>mergeNewParams</a><div class=ISubIndex><a href="../files/OpenLayers/Layer/ArcGIS93Rest-js.html#OpenLayers.Layer.ArcGIS93Rest.mergeNewParams" target=_parent class=IParent>OpenLayers.<wbr>Layer.<wbr>ArcGIS93Rest</a><a href="../files/OpenLayers/Layer/HTT [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_mergeNewParams><div class=IEntry><a href="javascript:searchResults.Toggle('SR_mergeNewParams')" class=ISymbol>mergeNewParams</a><div class=ISubIndex><a href="../files/OpenLayers/Layer/ArcGIS93Rest-js.html#OpenLayers.Layer.ArcGIS93Rest.mergeNewParams" target=_parent class=IParent>OpenLayers.<wbr>Layer.<wbr>ArcGIS93Rest</a><a href="../files/OpenLayers/Layer/Gri [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsN.html b/doc/apidocs/search/FunctionsN.html
index 1f6d7aa..f654ec5 100644
--- a/doc/apidocs/search/FunctionsN.html
+++ b/doc/apidocs/search/FunctionsN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsO.html b/doc/apidocs/search/FunctionsO.html
index a5ecf56..7c585b1 100644
--- a/doc/apidocs/search/FunctionsO.html
+++ b/doc/apidocs/search/FunctionsO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_offset><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Pixel-js.html#OpenLayers.Pixel.offset" target=_parent class=ISymbol>offset</a>, <span class=IParent>OpenLayers.<wbr>Pixel</span></div></div><div class=SRResult id=SR_on><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.on" target=_parent class=ISymbol>on</a>, <span c [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_offset><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Pixel-js.html#OpenLayers.Pixel.offset" target=_parent class=ISymbol>offset</a>, <span class=IParent>OpenLayers.<wbr>Pixel</span></div></div><div class=SRResult id=SR_on><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.on" target=_parent class=ISymbol>on</a>, <span c [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsP.html b/doc/apidocs/search/FunctionsP.html
index fefef0a..e8f5de2 100644
--- a/doc/apidocs/search/FunctionsP.html
+++ b/doc/apidocs/search/FunctionsP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsR.html b/doc/apidocs/search/FunctionsR.html
index 7f24b4a..8b8cfd9 100644
--- a/doc/apidocs/search/FunctionsR.html
+++ b/doc/apidocs/search/FunctionsR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_raiseLayer><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.raiseLayer" target=_parent class=ISymbol>raiseLayer</a>, <span class=IParent>OpenLayers.Map</span></div></div><div class=SRResult id=SR_read><div class=IEntry><a href="javascript:searchResults.Toggle('SR_read')" class=ISymbol>read</a><div class=ISubIndex><a href="../files/Ope [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_raiseLayer><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.raiseLayer" target=_parent class=ISymbol>raiseLayer</a>, <span class=IParent>OpenLayers.Map</span></div></div><div class=SRResult id=SR_read><div class=IEntry><a href="javascript:searchResults.Toggle('SR_read')" class=ISymbol>read</a><div class=ISubIndex><a href="../files/Ope [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsS.html b/doc/apidocs/search/FunctionsS.html
index 5230fb0..093f0b2 100644
--- a/doc/apidocs/search/FunctionsS.html
+++ b/doc/apidocs/search/FunctionsS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_parent class=ISymbol>save</a>, <span class=IParent>OpenLayers.<wbr>Strategy.Save</span></div></div><div class=SRResult id=SR_scale><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Bounds-js.html#OpenLayers.Bounds.scale" target=_parent class [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_parent class=ISymbol>save</a>, <span class=IParent>OpenLayers.<wbr>Strategy.Save</span></div></div><div class=SRResult id=SR_scale><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Bounds-js.html#OpenLayers.Bounds.scale" target=_parent class [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsT.html b/doc/apidocs/search/FunctionsT.html
index a2b55ef..c4559da 100644
--- a/doc/apidocs/search/FunctionsT.html
+++ b/doc/apidocs/search/FunctionsT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsU.html b/doc/apidocs/search/FunctionsU.html
index 2ce92f9..fc353a2 100644
--- a/doc/apidocs/search/FunctionsU.html
+++ b/doc/apidocs/search/FunctionsU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsV.html b/doc/apidocs/search/FunctionsV.html
index 3833c23..7aa8682 100644
--- a/doc/apidocs/search/FunctionsV.html
+++ b/doc/apidocs/search/FunctionsV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/FunctionsW.html b/doc/apidocs/search/FunctionsW.html
index ad4a31f..fa96cac 100644
--- a/doc/apidocs/search/FunctionsW.html
+++ b/doc/apidocs/search/FunctionsW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>OpenLayers.<wbr>Console</span></div></div><div class=SRResult id=SR_wrapDateLine><div class=IEntry><a href="../files/OpenLayers/BaseTypes/LonLat-js.html#OpenLayers.LonLat.wrapDateLine" target=_parent class=ISy [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>OpenLayers.<wbr>Console</span></div></div><div class=SRResult id=SR_wrapDateLine><div class=IEntry><a href="../files/OpenLayers/BaseTypes/LonLat-js.html#OpenLayers.LonLat.wrapDateLine" target=_parent class=ISy [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/FunctionsZ.html b/doc/apidocs/search/FunctionsZ.html
index 6ae0079..95ef432 100644
--- a/doc/apidocs/search/FunctionsZ.html
+++ b/doc/apidocs/search/FunctionsZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/GeneralA.html b/doc/apidocs/search/GeneralA.html
index 4f8ca91..ed0410c 100644
--- a/doc/apidocs/search/GeneralA.html
+++ b/doc/apidocs/search/GeneralA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol.HTTP</a><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protocol.Script.abort" target= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol.HTTP</a><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protocol.Script.abort" target= [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralB.html b/doc/apidocs/search/GeneralB.html
index 3fd975c..207e748 100644
--- a/doc/apidocs/search/GeneralB.html
+++ b/doc/apidocs/search/GeneralB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/GeneralC.html b/doc/apidocs/search/GeneralC.html
index 93ee4ff..0c4f4f3 100644
--- a/doc/apidocs/search/GeneralC.html
+++ b/doc/apidocs/search/GeneralC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CacheRead><div class=IEntry><a href="../files/OpenLayers/Control/CacheRead-js.html#OpenLayers.Control.CacheRead.OpenLayers.Control.CacheRead" target=_parent class=ISymbol>CacheRead</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheRead.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_CacheWrite><div class=IEntry><a href="../fi [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CacheRead><div class=IEntry><a href="../files/OpenLayers/Control/CacheRead-js.html#OpenLayers.Control.CacheRead.OpenLayers.Control.CacheRead" target=_parent class=ISymbol>CacheRead</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheRead.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_cacheSize><div class=IEntry><a href="../fil [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralD.html b/doc/apidocs/search/GeneralD.html
index b3c5a83..2cbd07d 100644
--- a/doc/apidocs/search/GeneralD.html
+++ b/doc/apidocs/search/GeneralD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="../files/OpenLayers/Format-js.html#OpenLayers.Format.data" target=_parent class=ISymbol>data</a>, <span class=IParent>OpenLayers.<wbr>Format</span></div></div><div class=SRResult id=SR_databaseName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.databaseName" target=_parent class=ISymbol>databaseN [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="../files/OpenLayers/Format-js.html#OpenLayers.Format.data" target=_parent class=ISymbol>data</a>, <span class=IParent>OpenLayers.<wbr>Format</span></div></div><div class=SRResult id=SR_databaseName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.databaseName" target=_parent class=ISymbol>databaseN [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralE.html b/doc/apidocs/search/GeneralE.html
index c91d7f0..c67e965 100644
--- a/doc/apidocs/search/GeneralE.html
+++ b/doc/apidocs/search/GeneralE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easing><div class=IEntry><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Tween.easing" target=_parent class=ISymbol>easing</a>, <span class=IParent>OpenLayers.<wbr>Tween</span></div></div><div class=SRResult id=SR_edge><div class=IEntry><a href="../files/OpenLayers/Control/Split-js.html#OpenLayers.Control.Split.edge" target=_parent class=ISymbol>edge</a [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easing><div class=IEntry><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Tween.easing" target=_parent class=ISymbol>easing</a>, <span class=IParent>OpenLayers.<wbr>Tween</span></div></div><div class=SRResult id=SR_edge><div class=IEntry><a href="../files/OpenLayers/Control/Split-js.html#OpenLayers.Control.Split.edge" target=_parent class=ISymbol>edge</a [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralF.html b/doc/apidocs/search/GeneralF.html
index b9d043e..3d1e90b 100644
--- a/doc/apidocs/search/GeneralF.html
+++ b/doc/apidocs/search/GeneralF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=ISymbol>fallThrough</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.fallThrough" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.fallThrough" target=_parent class=I [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=ISymbol>fallThrough</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.fallThrough" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.fallThrough" target=_parent class=I [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralG.html b/doc/apidocs/search/GeneralG.html
index 7ad45e0..62415a4 100644
--- a/doc/apidocs/search/GeneralG.html
+++ b/doc/apidocs/search/GeneralG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Gears><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.Gears.OpenLayers.Protocol.SQL.Gears" target=_parent class=ISymbol>Gears</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears.<wbr>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchRes [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Gears><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.Gears.OpenLayers.Protocol.SQL.Gears" target=_parent class=ISymbol>Gears</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears.<wbr>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchRes [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralH.html b/doc/apidocs/search/GeneralH.html
index 2bb1ac9..a445a7b 100644
--- a/doc/apidocs/search/GeneralH.html
+++ b/doc/apidocs/search/GeneralH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_Handler><div class=IEntry><a href="../files/OpenLayers/Handler-js.html#OpenLayers.Handler.OpenLayers.Handler" target=_parent class=ISymbol>Handler</a>, <s [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_Handler><div class=IEntry><a href="../files/OpenLayers/Handler-js.html#OpenLayers.Handler.OpenLayers.Handler" target=_parent class=ISymbol>Handler</a>, <s [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralI.html b/doc/apidocs/search/GeneralI.html
index d80a156..c70585a 100644
--- a/doc/apidocs/search/GeneralI.html
+++ b/doc/apidocs/search/GeneralI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_i18n><div class=IEntry><a href="../files/OpenLayers/Lang-js.html#OpenLayers.Lang.OpenLayers.i18n" target=_parent class=ISymbol>i18n</a>, <span class=IParent>OpenLayers.<wbr>Lang.<wbr>OpenLayers</span></div></div><div class=SRResult id=SR_icon><div class=IEntry><a href="../files/OpenLayers/Layer/GeoRSS-js.html#OpenLayers.Layer.GeoRSS.icon" target=_parent class [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_i18n><div class=IEntry><a href="../files/OpenLayers/Lang-js.html#OpenLayers.Lang.OpenLayers.i18n" target=_parent class=ISymbol>i18n</a>, <span class=IParent>OpenLayers.<wbr>Lang.<wbr>OpenLayers</span></div></div><div class=SRResult id=SR_icon><div class=IEntry><a href="../files/OpenLayers/Layer/GeoRSS-js.html#OpenLayers.Layer.GeoRSS.icon" target=_parent class [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralJ.html b/doc/apidocs/search/GeneralJ.html
index 14b852f..6597418 100644
--- a/doc/apidocs/search/GeneralJ.html
+++ b/doc/apidocs/search/GeneralJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_JSON><div class=IEntry><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.OpenLayers.Format.JSON" target=_parent class=ISymbol>JSON</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>JSON.<wbr>OpenLayers.<wbr>Format</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_js><div class=IEntry><a href="../files/OpenLayers/Util/vendorPrefix-js.html#OpenLayers.Util.vendorPrefix.js" target=_parent class=ISymbol>js</a>, <span class=IParent>OpenLayers.<wbr>Util.<wbr>vendorPrefix</span></div></div><div class=SRResult id=SR_JSON><div class=IEntry><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.OpenLayers.Format [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralK.html b/doc/apidocs/search/GeneralK.html
index 7e42254..899ee24 100644
--- a/doc/apidocs/search/GeneralK.html
+++ b/doc/apidocs/search/GeneralK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/GeneralL.html b/doc/apidocs/search/GeneralL.html
index c4bf9e3..9971662 100644
--- a/doc/apidocs/search/GeneralL.html
+++ b/doc/apidocs/search/GeneralL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_LABEL_undALIGN><div class=IEntry><a href="javascript:searchResults.Toggle('SR_LABEL_undALIGN')" class=ISymbol>LABE [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_LABEL_undALIGN><div class=IEntry><a href="javascript:searchResults.Toggle('SR_LABEL_undALIGN')" class=ISymbol>LABE [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralM.html b/doc/apidocs/search/GeneralM.html
index 5756368..434646a 100644
--- a/doc/apidocs/search/GeneralM.html
+++ b/doc/apidocs/search/GeneralM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map><div class=IEntry><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.map" target=_parent class=ISymbol>map</a>, <span class=IParent>OpenLayers.<wbr>Layer</span></div></div><div class=SRResult id=SR2_Map><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.OpenLayers.Map" target=_parent class=ISymbol>Map</a>, <span class=IPare [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map><div class=IEntry><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.map" target=_parent class=ISymbol>map</a>, <span class=IParent>OpenLayers.<wbr>Layer</span></div></div><div class=SRResult id=SR2_Map><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.OpenLayers.Map" target=_parent class=ISymbol>Map</a>, <span class=IPare [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralN.html b/doc/apidocs/search/GeneralN.html
index f10fc3f..dc4b12c 100644
--- a/doc/apidocs/search/GeneralN.html
+++ b/doc/apidocs/search/GeneralN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/GeneralO.html b/doc/apidocs/search/GeneralO.html
index 3f1e65b..05c8cfe 100644
--- a/doc/apidocs/search/GeneralO.html
+++ b/doc/apidocs/search/GeneralO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_observeElement><div class=IEntry><a href="../files/OpenLayers/Control/KeyboardDefaults-js.html#OpenLayers.Control.KeyboardDefaults.observeElement" target=_parent class=ISymbol>observeElement</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>KeyboardDefaults</span></div></div><div class=SRResult id=SR_offset><div class=IEntry><a href="../files/OpenLayers/B [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_observeElement><div class=IEntry><a href="../files/OpenLayers/Control/KeyboardDefaults-js.html#OpenLayers.Control.KeyboardDefaults.observeElement" target=_parent class=ISymbol>observeElement</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>KeyboardDefaults</span></div></div><div class=SRResult id=SR_offset><div class=IEntry><a href="../files/OpenLayers/B [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralP.html b/doc/apidocs/search/GeneralP.html
index abbfa66..212fedf 100644
--- a/doc/apidocs/search/GeneralP.html
+++ b/doc/apidocs/search/GeneralP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_pageCount><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Strategy.Paging.pageCount" target=_parent class=ISymbol>pageCount</a>, <span class=IParent>OpenLayers.<wbr>Strategy.<wbr>Paging</span></div></div><div class=SRResult id=SR_pageLength><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Stra [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_pageCount><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Strategy.Paging.pageCount" target=_parent class=ISymbol>pageCount</a>, <span class=IParent>OpenLayers.<wbr>Strategy.<wbr>Paging</span></div></div><div class=SRResult id=SR_pageLength><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Stra [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralQ.html b/doc/apidocs/search/GeneralQ.html
index 4f3f63e..6538f70 100644
--- a/doc/apidocs/search/GeneralQ.html
+++ b/doc/apidocs/search/GeneralQ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Query><div class=IEntry><a href="../files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html#OpenLayers.Format.CSWGetRecords.v2_0_2.Query" target=_parent class=ISymbol>Query</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</span></div></div><div class=SRResult id=SR_queryVisible><div class=IEntry><a href="../files/OpenLayers/Control/ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Query><div class=IEntry><a href="../files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html#OpenLayers.Format.CSWGetRecords.v2_0_2.Query" target=_parent class=ISymbol>Query</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</span></div></div><div class=SRResult id=SR_queryVisible><div class=IEntry><a href="javascript:searchResults.Tog [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralR.html b/doc/apidocs/search/GeneralR.html
index 7c38c60..5cbc9f2 100644
--- a/doc/apidocs/search/GeneralR.html
+++ b/doc/apidocs/search/GeneralR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>RegularPolygon</span></div></div><div class=SRResult id=SR_raiseLayer><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map. [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>RegularPolygon</span></div></div><div class=SRResult id=SR_raiseLayer><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map. [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralS.html b/doc/apidocs/search/GeneralS.html
index 48b0238..23a8b7a 100644
--- a/doc/apidocs/search/GeneralS.html
+++ b/doc/apidocs/search/GeneralS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_parent class=ISymbol>save</a>, <span class=IParent>OpenLayers.<wbr>Strategy.Save</span></div></div><div class=SRResult id=SR2_Save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.OpenLayers.Strategy.Sav [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_parent class=ISymbol>save</a>, <span class=IParent>OpenLayers.<wbr>Strategy.Save</span></div></div><div class=SRResult id=SR2_Save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.OpenLayers.Strategy.Sav [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralT.html b/doc/apidocs/search/GeneralT.html
index 0bd9b93..7b2e975 100644
--- a/doc/apidocs/search/GeneralT.html
+++ b/doc/apidocs/search/GeneralT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_TARGET_undNODE><div class=IEntry><a href="../files/OpenLayers/Layer/PointTrack-js.html#OpenLayers.Layer.PointTrack.OpenLayer [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_TARGET_undNODE><div class=IEntry><a href="../files/OpenLayers/Layer/PointTrack-js.html#OpenLayers.Layer.PointTrack.OpenLayer [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralU.html b/doc/apidocs/search/GeneralU.html
index 6eeb151..416cb75 100644
--- a/doc/apidocs/search/GeneralU.html
+++ b/doc/apidocs/search/GeneralU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_un><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.un" target=_parent class=ISymbol>un</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_undo><div class=IEntry><a href="../files/OpenLayers/Control/DrawFeature-js.html#OpenLayers.Control.DrawFeature.undo" target=_parent class=ISymbol>undo [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_un><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.un" target=_parent class=ISymbol>un</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_undo><div class=IEntry><a href="../files/OpenLayers/Control/DrawFeature-js.html#OpenLayers.Control.DrawFeature.undo" target=_parent class=ISymbol>undo [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralV.html b/doc/apidocs/search/GeneralV.html
index ffe173c..9a6048a 100644
--- a/doc/apidocs/search/GeneralV.html
+++ b/doc/apidocs/search/GeneralV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralW.html b/doc/apidocs/search/GeneralW.html
index 18d7214..9b8a605 100644
--- a/doc/apidocs/search/GeneralW.html
+++ b/doc/apidocs/search/GeneralW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_w><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.w" target=_parent class=ISymbol>w</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>Op [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_w><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.w" target=_parent class=ISymbol>w</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>Op [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/GeneralX.html b/doc/apidocs/search/GeneralX.html
index c08f2f9..b607b8d 100644
--- a/doc/apidocs/search/GeneralX.html
+++ b/doc/apidocs/search/GeneralX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/GeneralY.html b/doc/apidocs/search/GeneralY.html
index 1d95073..a6ccfe2 100644
--- a/doc/apidocs/search/GeneralY.html
+++ b/doc/apidocs/search/GeneralY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/GeneralZ.html b/doc/apidocs/search/GeneralZ.html
index def2bc3..5f77b61 100644
--- a/doc/apidocs/search/GeneralZ.html
+++ b/doc/apidocs/search/GeneralZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Z_undINDEX_undBASE><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.Z_INDEX_BASE" target=_parent class=ISymbol>Z_INDEX_BASE</a>, <span class=IParent>OpenLayers.Map</span></div></div><div class=SRResult id=SR_Z_undORDER_undDRAWING_undORDER><div class=IEntry><a href="../files/OpenLayers/Renderer/Elements-js.html#OpenLayers.ElementsIndex [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Z_undINDEX_undBASE><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.Z_INDEX_BASE" target=_parent class=ISymbol>Z_INDEX_BASE</a>, <span class=IParent>OpenLayers.Map</span></div></div><div class=SRResult id=SR_Z_undORDER_undDRAWING_undORDER><div class=IEntry><a href="../files/OpenLayers/Renderer/Elements-js.html#OpenLayers.ElementsIndex [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/NoResults.html b/doc/apidocs/search/NoResults.html
index 8c72496..5ce7717 100644
--- a/doc/apidocs/search/NoResults.html
+++ b/doc/apidocs/search/NoResults.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesA.html b/doc/apidocs/search/PropertiesA.html
index c44a622..d64a5a3 100644
--- a/doc/apidocs/search/PropertiesA.html
+++ b/doc/apidocs/search/PropertiesA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_active><div class=IEntry><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.active" target=_parent class=ISymbol>active</a>, <span class=IParent>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_allOverlays><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.allOverlays" target=_parent class=ISymbol>allOver [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_active><div class=IEntry><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.active" target=_parent class=ISymbol>active</a>, <span class=IParent>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_allOverlays><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.allOverlays" target=_parent class=ISymbol>allOver [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesB.html b/doc/apidocs/search/PropertiesB.html
index 28fdd50..69ef60c 100644
--- a/doc/apidocs/search/PropertiesB.html
+++ b/doc/apidocs/search/PropertiesB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesC.html b/doc/apidocs/search/PropertiesC.html
index 12b8df6..8c437ef 100644
--- a/doc/apidocs/search/PropertiesC.html
+++ b/doc/apidocs/search/PropertiesC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_callback><div class=IEntry><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protocol.Script.callback" target=_parent class=ISymbol>callback</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>Script</span></div></div><div class=SRResult id=SR_callbackKey><div class=IEntry><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protoc [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cacheSize><div class=IEntry><a href="../files/OpenLayers/TileManager-js.html#OpenLayers.TileManager.cacheSize" target=_parent class=ISymbol>cacheSize</a>, <span class=IParent>OpenLayers.<wbr>TileManager</span></div></div><div class=SRResult id=SR_callback><div class=IEntry><a href="../files/OpenLayers/Protocol/Script-js.html#OpenLayers.Protocol.Script.callbac [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesD.html b/doc/apidocs/search/PropertiesD.html
index d09fab9..94184c9 100644
--- a/doc/apidocs/search/PropertiesD.html
+++ b/doc/apidocs/search/PropertiesD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="../files/OpenLayers/Format-js.html#OpenLayers.Format.data" target=_parent class=ISymbol>data</a>, <span class=IParent>OpenLayers.<wbr>Format</span></div></div><div class=SRResult id=SR_databaseName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.databaseName" target=_parent class=ISymbol>databaseN [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="../files/OpenLayers/Format-js.html#OpenLayers.Format.data" target=_parent class=ISymbol>data</a>, <span class=IParent>OpenLayers.<wbr>Format</span></div></div><div class=SRResult id=SR_databaseName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.databaseName" target=_parent class=ISymbol>databaseN [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesE.html b/doc/apidocs/search/PropertiesE.html
index 2d11d8e..a4f4c04 100644
--- a/doc/apidocs/search/PropertiesE.html
+++ b/doc/apidocs/search/PropertiesE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easing><div class=IEntry><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Tween.easing" target=_parent class=ISymbol>easing</a>, <span class=IParent>OpenLayers.<wbr>Tween</span></div></div><div class=SRResult id=SR_edge><div class=IEntry><a href="../files/OpenLayers/Control/Split-js.html#OpenLayers.Control.Split.edge" target=_parent class=ISymbol>edge</a [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easing><div class=IEntry><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Tween.easing" target=_parent class=ISymbol>easing</a>, <span class=IParent>OpenLayers.<wbr>Tween</span></div></div><div class=SRResult id=SR_edge><div class=IEntry><a href="../files/OpenLayers/Control/Split-js.html#OpenLayers.Control.Split.edge" target=_parent class=ISymbol>edge</a [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesF.html b/doc/apidocs/search/PropertiesF.html
index 39c8a8e..b3e6480 100644
--- a/doc/apidocs/search/PropertiesF.html
+++ b/doc/apidocs/search/PropertiesF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=ISymbol>fallThrough</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.fallThrough" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.fallThrough" target=_parent class=I [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=ISymbol>fallThrough</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.fallThrough" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.fallThrough" target=_parent class=I [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesG.html b/doc/apidocs/search/PropertiesG.html
index 79210ea..36ac11f 100644
--- a/doc/apidocs/search/PropertiesG.html
+++ b/doc/apidocs/search/PropertiesG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchResults.Toggle('SR_geodesic')" class=ISymbol>geodesic</a><div class=ISubIndex><a href="../files/OpenLayers/Control/Scale-js.html#OpenLayers.Control.Scale.geodesic" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>Scale</a><a href="../files/OpenLayers/Control/ScaleLine-js.html#OpenLayers.Control.Sca [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchResults.Toggle('SR_geodesic')" class=ISymbol>geodesic</a><div class=ISubIndex><a href="../files/OpenLayers/Control/Measure-js.html#OpenLayers.Control.Measure.geodesic" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>Measure</a><a href="../files/OpenLayers/Control/Scale-js.html#OpenLayers.Control.S [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesH.html b/doc/apidocs/search/PropertiesH.html
index 63095a2..a9fa1e8 100644
--- a/doc/apidocs/search/PropertiesH.html
+++ b/doc/apidocs/search/PropertiesH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_handleRightClicks><div class=IEntry><a href="../files/OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation.handleRightClicks" target=_paren [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_handleRightClicks><div class=IEntry><a href="../files/OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation.handleRightClicks" target=_paren [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesI.html b/doc/apidocs/search/PropertiesI.html
index a506f9f..b0db9d1 100644
--- a/doc/apidocs/search/PropertiesI.html
+++ b/doc/apidocs/search/PropertiesI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_icon><div class=IEntry><a href="../files/OpenLayers/Layer/GeoRSS-js.html#OpenLayers.Layer.GeoRSS.icon" target=_parent class=ISymbol>icon</a>, <span class=IParent>OpenLayers.<wbr>Layer.<wbr>GeoRSS</span></div></div><div class=SRResult id=SR_id><div class=IEntry><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.id" target=_parent class=ISymbol>id</a>, [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_icon><div class=IEntry><a href="../files/OpenLayers/Layer/GeoRSS-js.html#OpenLayers.Layer.GeoRSS.icon" target=_parent class=ISymbol>icon</a>, <span class=IParent>OpenLayers.<wbr>Layer.<wbr>GeoRSS</span></div></div><div class=SRResult id=SR_id><div class=IEntry><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.id" target=_parent class=ISymbol>id</a>, [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesK.html b/doc/apidocs/search/PropertiesK.html
index c002003..7d151c8 100644
--- a/doc/apidocs/search/PropertiesK.html
+++ b/doc/apidocs/search/PropertiesK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesL.html b/doc/apidocs/search/PropertiesL.html
index 0199b54..6cd523a 100644
--- a/doc/apidocs/search/PropertiesL.html
+++ b/doc/apidocs/search/PropertiesL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_labelFormat><div class=IEntry><a href="../files/OpenLayers/Control/Graticule-js.html#OpenLayers.Control.Graticule. [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_labelFormat><div class=IEntry><a href="../files/OpenLayers/Control/Graticule-js.html#OpenLayers.Control.Graticule. [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesM.html b/doc/apidocs/search/PropertiesM.html
index 6cbb3b4..500bf0c 100644
--- a/doc/apidocs/search/PropertiesM.html
+++ b/doc/apidocs/search/PropertiesM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map><div class=IEntry><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.map" target=_parent class=ISymbol>map</a>, <span class=IParent>OpenLayers.<wbr>Layer</span></div></div><div class=SRResult id=SR_mapOptions><div class=IEntry><a href="../files/OpenLayers/Control/OverviewMap-js.html#OpenLayers.Control.OverviewMap.mapOptions" target=_parent class= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map><div class=IEntry><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.map" target=_parent class=ISymbol>map</a>, <span class=IParent>OpenLayers.<wbr>Layer</span></div></div><div class=SRResult id=SR_mapOptions><div class=IEntry><a href="../files/OpenLayers/Control/OverviewMap-js.html#OpenLayers.Control.OverviewMap.mapOptions" target=_parent class= [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesN.html b/doc/apidocs/search/PropertiesN.html
index d21bf0b..f926baf 100644
--- a/doc/apidocs/search/PropertiesN.html
+++ b/doc/apidocs/search/PropertiesN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesO.html b/doc/apidocs/search/PropertiesO.html
index 1beacaf..22e31d1 100644
--- a/doc/apidocs/search/PropertiesO.html
+++ b/doc/apidocs/search/PropertiesO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesP.html b/doc/apidocs/search/PropertiesP.html
index 955dfdf..be8ed47 100644
--- a/doc/apidocs/search/PropertiesP.html
+++ b/doc/apidocs/search/PropertiesP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_panIcons><div class=IEntry><a href="../files/OpenLayers/Control/PanZoomBar-js.html#OpenLayers.Control.PanZoomBar.panIcons" target=_parent class=ISymbol>panIcons</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>PanZoomBar</span></div></div><div class=SRResult id=SR_panMapIfOutOfView><div class=IEntry><a href="javascript:searchResults.Toggle('SR_panMapIfOu [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_panIcons><div class=IEntry><a href="../files/OpenLayers/Control/PanZoomBar-js.html#OpenLayers.Control.PanZoomBar.panIcons" target=_parent class=ISymbol>panIcons</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>PanZoomBar</span></div></div><div class=SRResult id=SR_panMapIfOutOfView><div class=IEntry><a href="javascript:searchResults.Toggle('SR_panMapIfOu [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesQ.html b/doc/apidocs/search/PropertiesQ.html
index 4f3f63e..6538f70 100644
--- a/doc/apidocs/search/PropertiesQ.html
+++ b/doc/apidocs/search/PropertiesQ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Query><div class=IEntry><a href="../files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html#OpenLayers.Format.CSWGetRecords.v2_0_2.Query" target=_parent class=ISymbol>Query</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</span></div></div><div class=SRResult id=SR_queryVisible><div class=IEntry><a href="../files/OpenLayers/Control/ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Query><div class=IEntry><a href="../files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html#OpenLayers.Format.CSWGetRecords.v2_0_2.Query" target=_parent class=ISymbol>Query</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</span></div></div><div class=SRResult id=SR_queryVisible><div class=IEntry><a href="javascript:searchResults.Tog [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesR.html b/doc/apidocs/search/PropertiesR.html
index 2b8a243..1bbabcf 100644
--- a/doc/apidocs/search/PropertiesR.html
+++ b/doc/apidocs/search/PropertiesR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>RegularPolygon</span></div></div><div class=SRResult id=SR_ratio><div class=IEntry><a href="javascript:searchResults.Toggle('SR_ratio')" class=I [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>RegularPolygon</span></div></div><div class=SRResult id=SR_ratio><div class=IEntry><a href="javascript:searchResults.Toggle('SR_ratio')" class=I [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesS.html b/doc/apidocs/search/PropertiesS.html
index edac106..b493b5b 100644
--- a/doc/apidocs/search/PropertiesS.html
+++ b/doc/apidocs/search/PropertiesS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_saveState><div class=IEntry><a href="../files/OpenLayers/Control/Panel-js.html#OpenLayers.Control.Panel.saveState" target=_parent class=ISymbol>saveState</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Panel</span></div></div><div class=SRResult id=SR_scale><div class=IEntry><a href="../files/OpenLayers/Control/TransformFeature-js.html#OpenLayers.Contro [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_saveState><div class=IEntry><a href="../files/OpenLayers/Control/Panel-js.html#OpenLayers.Control.Panel.saveState" target=_parent class=ISymbol>saveState</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Panel</span></div></div><div class=SRResult id=SR_scale><div class=IEntry><a href="../files/OpenLayers/Control/TransformFeature-js.html#OpenLayers.Contro [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesT.html b/doc/apidocs/search/PropertiesT.html
index 5a03deb..ff0219d 100644
--- a/doc/apidocs/search/PropertiesT.html
+++ b/doc/apidocs/search/PropertiesT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_targetFilter><div class=IEntry><a href="../files/OpenLayers/Control/Split-js.html#OpenLayers.Control.Split.targetFilter" tar [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_targetFilter><div class=IEntry><a href="../files/OpenLayers/Control/Split-js.html#OpenLayers.Control.Split.targetFilter" tar [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesU.html b/doc/apidocs/search/PropertiesU.html
index b9a2ce6..9173c5d 100644
--- a/doc/apidocs/search/PropertiesU.html
+++ b/doc/apidocs/search/PropertiesU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_units><div class=IEntry><a href="javascript:searchResults.Toggle('SR_units')" class=ISymbol>units</a><div class=ISubIndex><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.units" target=_parent class=IParent>OpenLayers.<wbr>Layer</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.units" target=_parent class=IParent>OpenLayers.Map</a></div></ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_units><div class=IEntry><a href="javascript:searchResults.Toggle('SR_units')" class=ISymbol>units</a><div class=ISubIndex><a href="../files/OpenLayers/Layer-js.html#OpenLayers.Layer.units" target=_parent class=IParent>OpenLayers.<wbr>Layer</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.units" target=_parent class=IParent>OpenLayers.Map</a></div></ [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesV.html b/doc/apidocs/search/PropertiesV.html
index 4ee24cf..2a421cc 100644
--- a/doc/apidocs/search/PropertiesV.html
+++ b/doc/apidocs/search/PropertiesV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_value><div class=IEntry><a href="javascript:searchResults.Toggle('SR_value')" class=ISymbol>value</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Comparison-js.html#OpenLayers.Filter.Comparison.value" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Comparison</a><a href="../files/OpenLayers/Filter/Spatial-js.html#OpenLayers.Filter.Spatial [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_value><div class=IEntry><a href="javascript:searchResults.Toggle('SR_value')" class=ISymbol>value</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Comparison-js.html#OpenLayers.Filter.Comparison.value" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Comparison</a><a href="../files/OpenLayers/Filter/Spatial-js.html#OpenLayers.Filter.Spatial [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/PropertiesW.html b/doc/apidocs/search/PropertiesW.html
index cf7c327..b986edd 100644
--- a/doc/apidocs/search/PropertiesW.html
+++ b/doc/apidocs/search/PropertiesW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesX.html b/doc/apidocs/search/PropertiesX.html
index 61da1bf..1234433 100644
--- a/doc/apidocs/search/PropertiesX.html
+++ b/doc/apidocs/search/PropertiesX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesY.html b/doc/apidocs/search/PropertiesY.html
index 61b2f3c..a68cba0 100644
--- a/doc/apidocs/search/PropertiesY.html
+++ b/doc/apidocs/search/PropertiesY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/apidocs/search/PropertiesZ.html b/doc/apidocs/search/PropertiesZ.html
index 74cc13f..0e6f04b 100644
--- a/doc/apidocs/search/PropertiesZ.html
+++ b/doc/apidocs/search/PropertiesZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zIndex><div class=IEntry><a href="../files/OpenLayers/Symbolizer-js.html#OpenLayers.Symbolizer.zIndex" target=_parent class=ISymbol>zIndex</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer</span></div></div><div class=SRResult id=SR_zoomBoxEnabled><div class=IEntry><a href="../files/OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation.zoomBox [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zIndex><div class=IEntry><a href="../files/OpenLayers/Symbolizer-js.html#OpenLayers.Symbolizer.zIndex" target=_parent class=ISymbol>zIndex</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer</span></div></div><div class=SRResult id=SR_zoomBoxEnabled><div class=IEntry><a href="../files/OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation.zoomBox [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/files/OpenLayers-js.html b/doc/devdocs/files/OpenLayers-js.html
index 4b2b88f..71f19ee 100644
--- a/doc/devdocs/files/OpenLayers-js.html
+++ b/doc/devdocs/files/OpenLayers-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers"></a>OpenLayers</h1><div class=CBody><p>The OpenLayers object provides a namespace for all things OpenLayers</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers" >OpenLayers</a></td><td class=SDescription>The OpenLayers object provi [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers"></a>OpenLayers</h1><div class=CBody><p>The OpenLayers object provides a namespace for all things OpenLayers</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers" >OpenLayers</a></td><td class=SDescription>The OpenLayers object provi [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Functions"></a>Functions</h3></div></div>
 
@@ -28,7 +28,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.VERSION_NUMBER"></a>VERSION_NUMBER</h3></div></div>
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.VERSION_NUMBER"></a>VERSION_NUMBER</h3><div class=CBody><p>This constant identifies the version of OpenLayers.</p><p>When asking questions or reporting issues, make sure to include the output of OpenLayers.VERSION_NUMBER in the question or issue-description.</p></div></div></div>
 
 </div><!--Content-->
 
@@ -36,10 +36,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile id=MSelected>OpenLayers</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile> [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile id=MSelected>OpenLayers</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile> [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([32], 34);// --></script></div><!--Menu-->
+HideAllBut([35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Animation-js.html b/doc/devdocs/files/OpenLayers/Animation-js.html
index 59c4bad..597e16f 100644
--- a/doc/devdocs/files/OpenLayers/Animation-js.html
+++ b/doc/devdocs/files/OpenLayers/Animation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Animation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script languag [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes-js.html b/doc/devdocs/files/OpenLayers/BaseTypes-js.html
index f479ec1..c8f02a1 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers Base Types - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers_Base_Types"></a>OpenLayers Base Types</h1><div class=CBody><p>OpenLayers custom string, number and function functions are described here.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers_Base_Types" >OpenLayers Base Types</a></td> [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers_Base_Types"></a>OpenLayers Base Types</h1><div class=CBody><p>OpenLayers custom string, number and function functions are described here.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers_Base_Types" >OpenLayers Base Types</a></td> [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.String"></a>OpenLayers.<wbr>String</h2><div class=CBody><p>Contains convenience functions for string manipulation.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.String.Functions_and_Properties" >Functions and Properties</a></td><td class=SDescription></t [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.String"></a>OpenLayers.<wbr>String</h2><div class=CBody><p>Contains convenience functions for string manipulation.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.String.Functions_and_Properties" >Functions and Properties</a></td><td class=SDescription></t [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.String.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
@@ -36,9 +36,9 @@ OpenLayers.String.isNumeric("12 dozen") // false
 OpenLayers.String.isNumeric("4") // true
 OpenLayers.String.isNumeric(" 4 ") // false</pre></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean} String contains only a number.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.String.numericIf"></a>numericIf</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>numericIf: function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.String.numericIf"></a>numericIf</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>numericIf: function(</td><td class="PParameter  prettyprint " nowrap>value,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>trimWhitespace</td><td class="PAfterPar [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Number"></a>OpenLayers.<wbr>Number</h2><div class=CBody><p>Contains convenience functions for manipulating numbers.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Number.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Number"></a>OpenLayers.<wbr>Number</h2><div class=CBody><p>Contains convenience functions for manipulating numbers.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Number.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Number.Properties"></a>Properties</h3></div></div>
 
@@ -52,7 +52,9 @@ OpenLayers.String.isNumeric(" 4 ") // false</pre></blockquote><h4 clas
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Number.format"></a>format</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>format: function(</td><td class="PParameter  prettyprint " nowrap>num,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dec,</td></tr><tr><td></td><td class="PParameter   [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Function"></a>OpenLayers.<wbr>Function</h2><div class=CBody><p>Contains convenience functions for function manipulation.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Function.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFun [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Number.zeroPad"></a>zeroPad</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zeroPad: function(</td><td class="PParameter  prettyprint " nowrap>num,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>len,</td></tr><tr><td></td><td class="PParamete [...]
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Function"></a>OpenLayers.<wbr>Function</h2><div class=CBody><p>Contains convenience functions for function manipulation.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Function.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFun [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Function.Functions"></a>Functions</h3></div></div>
 
@@ -66,7 +68,7 @@ OpenLayers.String.isNumeric(" 4 ") // false</pre></blockquote><h4 clas
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Function.Void"></a>Void</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">Void: function()</td></tr></table></blockquote><p>A reusable function that returns ``undefined``.</p><h4 class=CHeading>Returns</h4><p>{undefined}</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Array"></a>OpenLayers.<wbr>Array</h2><div class=CBody><p>Contains convenience functions for array manipulation.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Array.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SInden [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Array"></a>OpenLayers.<wbr>Array</h2><div class=CBody><p>Contains convenience functions for array manipulation.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Array.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SInden [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Array.Functions"></a>Functions</h3></div></div>
 
@@ -78,15 +80,15 @@ OpenLayers.String.isNumeric(" 4 ") // false</pre></blockquote><h4 clas
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>startsWith: function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sub</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Test whether a [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>startsWith: function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sub</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Test whether a [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/Bounds-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/Bounds-js.html
index 4609462..60aca1a 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/Bounds-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/Bounds-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Bounds - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><scrip [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -14,7 +14,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Bounds"></a>OpenLayers.<wbr>Bounds</h1><div class=CBody><p>Instances of this class represent bounding boxes.   Data stored as left, bottom, right, top floats.  All values are initialized to null, however, you should make sure you set them before using the bounds for anything.</p><h4 class=CHeading>Possible use case</h4><blockquote><pre class="prettyprint">bounds = new OpenLay [...]
 bounds.extend(new OpenLayers.LonLat(4,5));
 bounds.extend(new OpenLayers.LonLat(5,6));
-bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Bounds" >OpenLayers.<wbr>Bounds</a></td><td class=SDescription>Instances of this class represent bounding boxes. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#OpenLayers.Bounds.Properties" >Properties</a></td><td c [...]
+bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Bounds" >OpenLayers.<wbr>Bounds</a></td><td class=SDescription>Instances of this class represent bounding boxes. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#OpenLayers.Bounds.Properties" >Properties</a></td><td c [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.Properties"></a>Properties</h3></div></div>
 
@@ -26,63 +26,80 @@ bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><di
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.top"></a>top</h3><div class=CBody><p>{Number} Maximum vertical coordinate.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.centerLonLat"></a>centerLonLat</h3><div class=CBody><p>{<a href="LonLat-js.html#OpenLayers.LonLat" class=LClass id=link30 onMouseOver="ShowTip(event, 'tt1', 'link30')" onMouseOut="HideTip('tt1')">OpenLayers.LonLat</a>} A cached center location.   This should not be accessed directly.   Use <a href="#OpenLayers.Bounds.getCenterLonLat" class=LFunction id=link31 onMouseOver="ShowTip(event, 'tt14', [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.centerLonLat"></a>centerLonLat</h3><div class=CBody><p>{<a href="LonLat-js.html#OpenLayers.LonLat" class=LClass id=link38 onMouseOver="ShowTip(event, 'tt1', 'link38')" onMouseOut="HideTip('tt1')">OpenLayers.LonLat</a>} A cached center location.   This should not be accessed directly.   Use <a href="#OpenLayers.Bounds.getCenterLonLat" class=LFunction id=link39 onMouseOver="ShowTip(event, 'tt14', [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.OpenLayers.Bounds"></a>OpenLayers.<wbr>Bounds</h3><div class=CBody><p>Construct a new bounds object.  Coordinates can either be passed as four arguments, or as a single argument.</p><h4 class=CHeading>Parameters (four arguments)</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>left</td><td class=CDLDescription>{Number} The left bounds of the box.  [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.OpenLayers.Bounds"></a>OpenLayers.<wbr>Bounds</h3><div class=CBody><p>Construct a new bounds object.  Coordinates can either be passed as four arguments, or as a single argument.</p><h4 class=CHeading>Parameters (four arguments)</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>left</td><td class=CDLDescription>{Number} The left bounds of the box.  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clone:function()</td></tr></table></blockquote><p>Create a cloned instance of this bounds.</p><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Bounds.OpenLayers.Bounds" class=LConstructor id=link32 onMouseOver="ShowTip(event, 'tt29', 'link32')" onMouseOut="Hid [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clone:function()</td></tr></table></blockquote><p>Create a cloned instance of this bounds.</p><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Bounds.OpenLayers.Bounds" class=LConstructor id=link40 onMouseOver="ShowTip(event, 'tt19', 'link40')" onMouseOut="Hid [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.equals"></a>equals</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>equals:function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Test a tw [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.equals"></a>equals</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>equals:function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Test a tw [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toString"></a>toString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} String representation of bounds object.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toString"></a>toString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString:function()</td></tr></table></blockquote><p>Returns a string representation of the bounds object.</p><h4 class=CHeading>Returns</h4><p>{String} String representation of bounds object.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toArray"></a>toArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toArray: function(</td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toArray"></a>toArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toArray: function(</td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toBBOX"></a>toBBOX</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toBBOX:function(</td><td class="PParameter  prettyprint " nowrap>decimal,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toBBOX"></a>toBBOX</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toBBOX:function(</td><td class="PParameter  prettyprint " nowrap>decimal,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td><td class="PAfterParameter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toGeometry"></a>toGeometry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toGeometry: function()</td></tr></table></blockquote><p>Create a new polygon geometry based on this bounds.</p><h4 class=CHeading>Returns</h4><p>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link34 onMouseOver="ShowTip(e [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.toGeometry"></a>toGeometry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toGeometry: function()</td></tr></table></blockquote><p>Create a new polygon geometry based on this bounds.</p><h4 class=CHeading>Returns</h4><p>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link42 onMouseOver="ShowTip(e [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getWidth"></a>getWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getWidth:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The width of the bounds</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getWidth"></a>getWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getWidth:function()</td></tr></table></blockquote><p>Returns the width of the bounds.</p><h4 class=CHeading>Returns</h4><p>{Float} The width of the bounds (right minus left).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getHeight"></a>getHeight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getHeight:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The height of the bounds (top minus bottom).</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getHeight"></a>getHeight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getHeight:function()</td></tr></table></blockquote><p>Returns the height of the bounds.</p><h4 class=CHeading>Returns</h4><p>{Float} The height of the bounds (top minus bottom).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="Size-js.html#OpenLayers.Size" class=LClass id=link35 onMouseOver="ShowTip(event, 'tt11', 'link35')" onMouseOut="HideTip('tt11')">OpenLayers.Size</a>} The size of the box. [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize:function()</td></tr></table></blockquote><p>Returns an <a href="Size-js.html#OpenLayers.Size" class=LClass id=link43 onMouseOver="ShowTip(event, 'tt11', 'link43')" onMouseOut="HideTip('tt11')">OpenLayers.Size</a> object of the bounds.</p><h4 class=CHeadin [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterPixel"></a>getCenterPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterPixel:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="Pixel-js.html#OpenLayers.Pixel" class=LClass id=link36 onMouseOver="ShowTip(event, 'tt13', 'link36')" onMouseOut="HideTip('tt13')">OpenLayers.Pixel</ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterPixel"></a>getCenterPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterPixel:function()</td></tr></table></blockquote><p>Returns the <a href="Pixel-js.html#OpenLayers.Pixel" class=LClass id=link45 onMouseOver="ShowTip(event, 'tt13', 'link45')" onMouseOut="HideTip('tt13')">OpenLayers.Pixel</a> object which repr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterLonLat"></a>getCenterLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterLonLat:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="LonLat-js.html#OpenLayers.LonLat" class=LClass id=link37 onMouseOver="ShowTip(event, 'tt1', 'link37')" onMouseOut="HideTip('tt1')">OpenLayers.LonL [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.getCenterLonLat"></a>getCenterLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenterLonLat:function()</td></tr></table></blockquote><p>Returns the <a href="LonLat-js.html#OpenLayers.LonLat" class=LClass id=link47 onMouseOver="ShowTip(event, 'tt1', 'link47')" onMouseOut="HideTip('tt1')">OpenLayers.LonLat</a> object which  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.scale"></a>scale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>scale: function(</td><td class="PParameter  prettyprint " nowrap>ratio,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>origin</td><td class="PAfterParameters  prettyprint [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.scale"></a>scale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>scale: function(</td><td class="PParameter  prettyprint " nowrap>ratio,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>origin</td><td class="PAfterParameters  prettyprint [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.add"></a>add</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>add:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.add"></a>add</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>add:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+bounds.toString();
+// => "0,0,10,10"
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.extend"></a>extend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extend:function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Extend th [...]
+bounds.add(-1.5, 4).toString();
+// => "-1.5,4,8.5,14"</pre></blockquote><p>This method will throw a TypeError if it is passed null as an argument.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>{Float} horizontal delta</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>{Float} vertical delta</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Bounds.OpenLayers.Boun [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsLonLat"></a>containsLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsLonLat: function(</td><td class="PParameter  prettyprint " nowrap>ll,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAft [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.extend"></a>extend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extend:function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Extend th [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsPixel"></a>containsPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsPixel:function(</td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>inclusive</td><td class="PAfter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.extendXY"></a>extendXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extendXY:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PAfterParameters  prettyprint  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.contains"></a>contains</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>contains:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y,</td></tr><tr><td></td><td class="PParameter  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsLonLat"></a>containsLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsLonLat: function(</td><td class="PParameter  prettyprint " nowrap>ll,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAft [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.intersectsBounds"></a>intersectsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>intersectsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td cl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsPixel"></a>containsPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsPixel:function(</td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>inclusive</td><td class="PAfter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsBounds"></a>containsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>partial,</td></tr><tr><t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.contains"></a>contains</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>contains:function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y,</td></tr><tr><td></td><td class="PParameter  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.determineQuadrant"></a>determineQuadrant</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>determineQuadrant: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.intersectsBounds"></a>intersectsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>intersectsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.transform"></a>transform</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>transform: function(</td><td class="PParameter  prettyprint " nowrap>source,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dest</td><td class="PAfterParameters   [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.containsBounds"></a>containsBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>containsBounds:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>partial,</td></tr><tr><t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromString"></a>fromString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromString = function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.determineQuadrant"></a>determineQuadrant</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>determineQuadrant: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromArray"></a>fromArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromArray = function(</td><td class="PParameter  prettyprint " nowrap>bbox,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.transform"></a>transform</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>transform: function(</td><td class="PParameter  prettyprint " nowrap>source,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dest</td><td class="PAfterParameters   [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromSize"></a>fromSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromSize = function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromString"></a>fromString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromString = function(</td><td class="PParameter  prettyprint " nowrap>str,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</t [...]
+// => equivalent to ...
+new OpenLayers.Bounds(5, 42, 10, 45);</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>str</td><td class=CDLDescription>{String} Comma-separated bounds string.  (e.g.  “5,42,10,45”)</td></tr><tr><td class=CDLEntry>reverseAxisOrder</td><td class=CDLDescription>{Boolean} Does the string use reverse axis order?</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="#OpenL [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.oppositeQuadrant"></a>oppositeQuadrant</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.oppositeQuadrant = function(</td><td class="PParameter  prettyprint " nowrap>quadrant</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromArray"></a>fromArray</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromArray = function(</td><td class="PParameter  prettyprint " nowrap>bbox,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reverseAxisOrder</td> [...]
+// => equivalent to ...
+new OpenLayers.Bounds(5, 42, 10, 45);</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>bbox</td><td class=CDLDescription>{Array(Float)} Array of bounds values (e.g.  [5,42,10,45])</td></tr><tr><td class=CDLEntry>reverseAxisOrder</td><td class=CDLDescription>{Boolean} Does the array use reverse axis order?</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Bounds.OpenLay [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.fromSize"></a>fromSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.fromSize = function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+// => equivalent to ...
+new OpenLayers.Bounds(0, 20, 10, 0);</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>size</td><td class=CDLDescription>{<a href="Size-js.html#OpenLayers.Size" class=LClass id=link74 onMouseOver="ShowTip(event, 'tt11', 'link74')" onMouseOut="HideTip('tt11')">OpenLayers.Size</a> or Object} <a href="Size-js.html#OpenLayers.Size" class=LClass id=link75 onMouseOver="ShowTip(event, 'tt11', 'link75')"  [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Bounds.oppositeQuadrant"></a>oppositeQuadrant</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Bounds.oppositeQuadrant = function(</td><td class="PParameter  prettyprint " nowrap>quadrant</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+// => "br"
+
+OpenLayers.Bounds.oppositeQuadrant( "tr" );
+// => "bl"</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>quadrant</td><td class=CDLDescription>{String} two character quadrant shortstring</td></tr></table><h4 class=CHeading>Returns</h4><p>{String} The opposing quadrant (“br” “tr” “tl” “bl”).  For Example, if you pass in “bl” it returns “tr”, if you pass [...]
 
 </div><!--Content-->
 
@@ -90,15 +107,15 @@ bounds.toBBOX(); // returns 4,5,5,6</pre></blockquote><!--START_ND_SUMMARY--><di
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clone:function()</td></tr></table></blockquote>Create a cloned instance of this bounds.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td [...]
+<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clone:function()</td></tr></table></blockquote>Create a cloned instance of this bounds.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/Class-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/Class-js.html
index 336bce7..7acb97d 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/Class-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/Class-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Class.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class=" [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Class.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/Date-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/Date-js.html
index 068402c..2f28882 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/Date-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/Date-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Date - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script  [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Date"></a>OpenLayers.Date</h1><div class=CBody><p>Contains implementations of Date.parse and date.toISOString that match the ECMAScript 5 specification for parsing RFC 3339 dates.  <a href="http://tools.ietf.org/html/rfc3339" class=LURL target=_top>http://tools.ietf.org/html/rfc3339</a></p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder> [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Date"></a>OpenLayers.Date</h1><div class=CBody><p>Contains implementations of Date.parse and date.toISOString that match the ECMAScript 5 specification for parsing RFC 3339 dates.  <a href="http://tools.ietf.org/html/rfc3339" class=LURL target=_top>http://tools.ietf.org/html/rfc3339</a></p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder> [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Date.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Date.dateRegEx"></a>dateRegEx</h3><div class=CBody><p>The regex to be used for validating dates.  You can provide your own regex for instance for adding support for years before BC.  Default value is: /^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))|Z)?$/</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Date.Functions"></a>Functions</h3></div></div>
 
@@ -25,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/Element-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/Element-js.html
index 21ee0fb..1ee47df 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/Element-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/Element-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Element - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><scri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/LonLat-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/LonLat-js.html
index c390f22..851a087 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/LonLat-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/LonLat-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.LonLat - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><scrip [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/Pixel-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/Pixel-js.html
index 4a37fc8..23057c5 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/Pixel-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/Pixel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Pixel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/BaseTypes/Size-js.html b/doc/devdocs/files/OpenLayers/BaseTypes/Size-js.html
index aeab1d0..dc265a6 100644
--- a/doc/devdocs/files/OpenLayers/BaseTypes/Size-js.html
+++ b/doc/devdocs/files/OpenLayers/BaseTypes/Size-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Size - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script  [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([1, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([1, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Console-js.html b/doc/devdocs/files/OpenLayers/Console-js.html
index 0503546..fe8f8b3 100644
--- a/doc/devdocs/files/OpenLayers/Console-js.html
+++ b/doc/devdocs/files/OpenLayers/Console-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Console - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control-js.html b/doc/devdocs/files/OpenLayers/Control-js.html
index c55212f..5f54ff7 100644
--- a/doc/devdocs/files/OpenLayers/Control-js.html
+++ b/doc/devdocs/files/OpenLayers/Control-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -34,7 +34,7 @@ OpenLayers.Util.extend(control, {
         OpenLayers.Console.userError(bounds);
     }
 });
-map.addControl(control);</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Control" >OpenLayers.<wbr>Control</a></td><td class=SDescription>Controls affect the display or behavior of the map. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#OpenLayers.Control.Properties" >Properties</a></td><td class=S [...]
+map.addControl(control);</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Control" >OpenLayers.<wbr>Control</a></td><td class=SDescription>Controls affect the display or behavior of the map. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#OpenLayers.Control.Properties" >Properties</a></td><td class=S [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Properties"></a>Properties</h3></div></div>
 
@@ -56,6 +56,8 @@ map.addControl(control);</pre></blockquote><!--START_ND_SUMMARY--><div class=Sum
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.active"></a>active</h3><div class=CBody><p>{Boolean} The control is active (read-only).   Use <a href="#OpenLayers.Control.activate" class=LFunction id=link12 onMouseOver="ShowTip(event, 'tt8', 'link12')" onMouseOut="HideTip('tt8')">activate</a> and <a href="#OpenLayers.Control.deactivate" class=LFunction id=link13 onMouseOver="ShowTip(event, 'tt9', 'link13')" onMouseOut="HideTip('tt9')">deactivate [...]
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.handlerOptions"></a>handlerOptions</h3><div class=CBody><p>{Object} Used to set non-default properties on the control’s handler</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.handler"></a>handler</h3><div class=CBody><p>{<a href="Handler-js.html#OpenLayers.Handler" class=LClass id=link14 onMouseOver="ShowTip(event, 'tt2', 'link14')" onMouseOut="HideTip('tt2')">OpenLayers.Handler</a>} null</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link15 onMouseOver="ShowTip(event, 'tt3', 'link15')" onMouseOut="HideTip('tt3')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for  [...]
@@ -94,10 +96,10 @@ map.addControl(control);</pre></blockquote><!--START_ND_SUMMARY--><div class=Sum
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ArgParser-js.html b/doc/devdocs/files/OpenLayers/Control/ArgParser-js.html
index d2e24e2..40780cc 100644
--- a/doc/devdocs/files/OpenLayers/Control/ArgParser-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ArgParser-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ArgParser - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Attribution-js.html b/doc/devdocs/files/OpenLayers/Control/Attribution-js.html
index 1bfa795..46a8d27 100644
--- a/doc/devdocs/files/OpenLayers/Control/Attribution-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Attribution-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Attribution - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Attribution"></a>OpenLayers.<wbr>Control.<wbr>Attribution</h1><div class=CBody><p>The attribution control adds attribution from layers to the map display.  It uses ‘attribution’ property of each layer.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4') [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Attribution"></a>OpenLayers.<wbr>Control.<wbr>Attribution</h1><div class=CBody><p>The attribution control adds attribution from layers to the map display.  It uses ‘attribution’ property of each layer.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4') [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.seperator"></a>seperator</h3><div class=CBody><p>{String} String used to seperate layers.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.separator"></a>separator</h3><div class=CBody><p>{String} String used to separate layers.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.template"></a>template</h3><div class=CBody><p>{String} Template for the attribution.  This has to include the substring “${layers}”, which will be replaced by the layer specific attributions, separated by <separator>.  The default is “${layers}”.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.template"></a>template</h3><div class=CBody><p>{String} Template for the attribution.  This has to include the substring “${layers}”, which will be replaced by the layer specific attributions, separated by <a href="#OpenLayers.Control.Attribution.separator" class=LProperty id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">separator</a>.   [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Attribution.Constructor"></a>Constructor</h3></div></div>
 
@@ -37,15 +37,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Destroy control.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">draw: function()</td></tr></table></blockquote>Initialize control.</div></div><div class=CToolTip id="tt3"><di [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Destroy control.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">draw: function()</td></tr></table></blockquote>Initialize control.</div></div><div class=CToolTip id="tt3"><di [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Button-js.html b/doc/devdocs/files/OpenLayers/Control/Button-js.html
index c24f0d4..34764dd 100644
--- a/doc/devdocs/files/OpenLayers/Control/Button-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Button-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Button - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -30,10 +30,10 @@ panel.addControls([button]);</pre></blockquote><p>Will create a button with CSS
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/CacheRead-js.html b/doc/devdocs/files/OpenLayers/Control/CacheRead-js.html
index 9315814..ea5cb4c 100644
--- a/doc/devdocs/files/OpenLayers/Control/CacheRead-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/CacheRead-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.CacheRead - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/CacheWrite-js.html b/doc/devdocs/files/OpenLayers/Control/CacheWrite-js.html
index 1cb1aad..82dc8dc 100644
--- a/doc/devdocs/files/OpenLayers/Control/CacheWrite-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/CacheWrite-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.CacheWrite - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.CacheWrite"></a>OpenLayers.<wbr>Control.<wbr>CacheWrite</h1><div class=CBody><p>A control for caching image tiles in the browser’s local storage.  The <a href="CacheRead-js.html#OpenLayers.Control.CacheRead" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">OpenLayers.Control.CacheRead</a> control is used to fetch and use  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.CacheWrite"></a>OpenLayers.<wbr>Control.<wbr>CacheWrite</h1><div class=CBody><p>A control for caching image tiles in the browser’s local storage.  The <a href="CacheRead-js.html#OpenLayers.Control.CacheRead" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">OpenLayers.Control.CacheRead</a> control is used to fetch and  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} Events instance for listeners and triggering control specific events.</p><p>To register events in the constructor, configure <a href="#OpenLayers.Control.CacheWrite.eventListeners" class=LProperty id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="Hi [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} Events instance for listeners and triggering control specific events.</p><p>To register events in the constructor, configure <a href="#OpenLayers.Control.CacheWrite.eventListeners" class=LProperty id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="Hi [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} Object with event listeners, keyed by event name.  An optional scope property defines the scope that listeners will be executed in.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.layers"></a>layers</h3><div class=CBody><p>{Array(<a href="../Layer/Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link13 onMouseOver="ShowTip(event, 'tt1', 'link13')" onMouseOut="HideTip('tt1')">OpenLayers.Layer.Grid</a>)}.  Optional.  If provided, caching will be enabled for these layers only, otherwise for all cacheable layers.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.layers"></a>layers</h3><div class=CBody><p>{Array(<a href="../Layer/Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link14 onMouseOver="ShowTip(event, 'tt1', 'link14')" onMouseOut="HideTip('tt1')">OpenLayers.Layer.Grid</a>)}.  Optional.  If provided, caching will be enabled for these layers only, otherwise for all cacheable layers.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.imageFormat"></a>imageFormat</h3><div class=CBody><p>{String} The image format used for caching.  The default is “image/png”.  Supported formats depend on the user agent.  If an unsupported <a href="#OpenLayers.Control.CacheWrite.imageFormat" class=LProperty id=link14 onMouseOver="ShowTip(event, 'tt13', 'link14')" onMouseOut="HideTip('tt13')">imageFormat</a> is prov [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.imageFormat"></a>imageFormat</h3><div class=CBody><p>{String} The image format used for caching.  The default is “image/png”.  Supported formats depend on the user agent.  If an unsupported <a href="#OpenLayers.Control.CacheWrite.imageFormat" class=LProperty id=link15 onMouseOver="ShowTip(event, 'tt14', 'link15')" onMouseOut="HideTip('tt14')">imageFormat</a> is prov [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.quotaRegEx"></a>quotaRegEx</h3><div class=CBody><p>{RegExp}</p></div></div></div>
 
@@ -31,15 +31,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.addLayer"></a>addLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addLayer: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockqu [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.removeLayer"></a>removeLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeLayer: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.makeSameOrigin"></a>makeSameOrigin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>makeSameOrigin: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.makeSameOrigin"></a>makeSameOrigin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>makeSameOrigin: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.cache"></a>cache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cache: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Ad [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.onTileLoaded"></a>onTileLoaded</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>onTileLoaded: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.cache"></a>cache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cache: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Ad [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.CacheWrite.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>The destroy method is used to perform any clean up before the control is dereferenced.   Typically this is where event listeners are removed to prevent memory leaks.</p></div></div></div>
 
@@ -55,15 +57,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Base class for layers that use a lattice of tiles. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
+<div class=CToolTip id="tt1"><div class=CClass>Base class for layers that use a lattice of tiles. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/DragFeature-js.html b/doc/devdocs/files/OpenLayers/Control/DragFeature-js.html
index dde5c5e..084cc07 100644
--- a/doc/devdocs/files/OpenLayers/Control/DragFeature-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/DragFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.DragFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -77,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/DragPan-js.html b/doc/devdocs/files/OpenLayers/Control/DragPan-js.html
index f940354..dfcd674 100644
--- a/doc/devdocs/files/OpenLayers/Control/DragPan-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/DragPan-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.DragPan - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,13 +19,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.panned"></a>panned</h3><div class=CBody><p>{Boolean} The map moved.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.interval"></a>interval</h3><div class=CBody><p>{Integer} The number of milliseconds that should ellapse before panning the map again.  Defaults to 1 millisecond.  In most cases you won’t want to change this value.  For slow machines/devices larger values can be tried out.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.interval"></a>interval</h3><div class=CBody><p>{Integer} The number of milliseconds that should ellapse before panning the map again.  Defaults to 0 milliseconds, which means that no separate cycle is used for panning.  In most cases you won’t want to change this value.  For slow machines/devices larger values can be tried out.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.documentDrag"></a>documentDrag</h3><div class=CBody><p>{Boolean} If set to true, mouse dragging will continue even if the mouse cursor leaves the map viewport.  Default is false.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.kinetic"></a>kinetic</h3><div class=CBody><p>{<a href="../Kinetic-js.html#OpenLayers.Kinetic" class=LConstructor >OpenLayers.Kinetic</a>} The OpenLayers.Kinetic object.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.enableKinetic"></a>enableKinetic</h3><div class=CBody><p>{Boolean} Set this option to enable “kinetic dragging”.  Can be set to true or to an object.  If set to an object this object will be passed to the {<a href="../Kinetic-js.html#OpenLayers.Kinetic" class=LConstructor >OpenLayers.Kinetic</a>} constructor.  Defaults to false.  If you set this property, you shou [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.enableKinetic"></a>enableKinetic</h3><div class=CBody><p>{Boolean} Set this option to enable “kinetic dragging”.  Can be set to true or to an object.  If set to an object this object will be passed to the {<a href="../Kinetic-js.html#OpenLayers.Kinetic" class=LConstructor >OpenLayers.Kinetic</a>} constructor.  Defaults to true.  To get kinetic dragging, ensure tha [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.DragPan.kineticInterval"></a>kineticInterval</h3><div class=CBody><p>{Integer} Interval in milliseconds between 2 steps in the “kinetic scrolling”.  Applies only if enableKinetic is set.  Defaults to 10 milliseconds.</p></div></div></div>
 
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/DrawFeature-js.html b/doc/devdocs/files/OpenLayers/Control/DrawFeature-js.html
index bd69085..0c4a329 100644
--- a/doc/devdocs/files/OpenLayers/Control/DrawFeature-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/DrawFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.DrawFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/EditingToolbar-js.html b/doc/devdocs/files/OpenLayers/Control/EditingToolbar-js.html
index fc66825..dfd0bf5 100644
--- a/doc/devdocs/files/OpenLayers/Control/EditingToolbar-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/EditingToolbar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.EditingToolbar - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Geolocate-js.html b/doc/devdocs/files/OpenLayers/Control/Geolocate-js.html
index 423d461..cc7a8d3 100644
--- a/doc/devdocs/files/OpenLayers/Control/Geolocate-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Geolocate-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Geolocate - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Geolocate"></a>OpenLayers.<wbr>Control.<wbr>Geolocate</h1><div class=CBody><p>The Geolocate control wraps w3c geolocation API into control that can be bound to a map, and generate events on location update</p><p>To use this control requires to load the proj4js library if the projection of the map is not EPSG:4326 or EPSG:900913.</p><h4 class=CHeading>Inherits from</h4><ul><li>< [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Geolocate"></a>OpenLayers.<wbr>Control.<wbr>Geolocate</h1><div class=CBody><p>The Geolocate control wraps w3c geolocation API into control that can be bound to a map, and generate events on location update</p><p>To use this control requires to load the proj4js library if the projection of the map is not EPSG:4326 or EPSG:900913.</p><h4 class=CHeading>Inherits from</h4><ul><li>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Geolocate.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Geolocate.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} Events instance for listeners and triggering control specific events.</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">control.events.register(type, obj, listener);</pre></blockquote><h4 [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Geolocate.geolocation"></a>geolocation</h3><div class=CBody><p>{Object} The geolocation engine, as a property to be possibly mocked.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Geolocate.geolocation"></a>geolocation</h3><div class=CBody><p>{Object} The geolocation engine, as a property to be possibly mocked.  This is set lazily to avoid a memory leak in IE9.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Geolocate.available"></a>available</h3><div class=CBody><p>{Boolean} The navigator.geolocation object is available.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Geolocate.bind"></a>bind</h3><div class=CBody><p>{Boolean} If true, map center will be set on location update.</p></div></div></div>
 
@@ -49,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/GetFeature-js.html b/doc/devdocs/files/OpenLayers/Control/GetFeature-js.html
index 8b02616..e270037 100644
--- a/doc/devdocs/files/OpenLayers/Control/GetFeature-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/GetFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.GetFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -95,10 +95,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Graticule-js.html b/doc/devdocs/files/OpenLayers/Control/Graticule-js.html
index 734eb35..b3fb6c6 100644
--- a/doc/devdocs/files/OpenLayers/Control/Graticule-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Graticule-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Graticule - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -61,10 +61,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/KeyboardDefaults-js.html b/doc/devdocs/files/OpenLayers/Control/KeyboardDefaults-js.html
index a2cad36..cd095ad 100644
--- a/doc/devdocs/files/OpenLayers/Control/KeyboardDefaults-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/KeyboardDefaults-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.KeyboardDefaults - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/LayerSwitcher-js.html b/doc/devdocs/files/OpenLayers/Control/LayerSwitcher-js.html
index 3cbfa46..c3ccd00 100644
--- a/doc/devdocs/files/OpenLayers/Control/LayerSwitcher-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/LayerSwitcher-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.LayerSwitcher - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,14 +11,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.LayerSwitcher"></a>OpenLayers.<wbr>Control.<wbr>LayerSwitcher</h1><div class=CBody><p>The LayerSwitcher control displays a table of contents for the map.  This allows the user interface to switch between BaseLasyers and to show or hide Overlays.  By default the switcher is shown minimized on the right edge of the map, the user may expand it by clicking on the handle.< [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.LayerSwitcher"></a>OpenLayers.<wbr>Control.<wbr>LayerSwitcher</h1><div class=CBody><p>The LayerSwitcher control displays a table of contents for the map.  This allows the user interface to switch between BaseLasyers and to show or hide Overlays.  By default the switcher is shown minimized on the right edge of the map, the user may expand it by clicking on the handle.< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.roundedCorner"></a>roundedCorner</h3><div class=CBody><p>{Boolean} If true the Rico library is used for rounding the corners of the layer switcher div, defaults to false.  <b>Deprecated</b>.  Use CSS3’s border-radius instead.  If this option is set to true the Rico/Corner.js script must be loaded in the page, and therefore listed in the build profile.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.roundedCornerColor"></a>roundedCornerColor</h3><div class=CBody><p>{String} The color of the rounded corners, only applies if roundedCorner is true, defaults to “darkblue”.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.layerStates"></a>layerStates</h3><div class=CBody><p>{Array(Object)} Basically a copy of the “state” of the map’s layers the last time the control was drawn.  We have this in order to avoid unnecessarily redrawing the control.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.LayerSwitcher.layersDiv"></a>layersDiv</h3><div class=CBody><p>{DOMElement}</p></div></div></div>
@@ -75,10 +71,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Measure-js.html b/doc/devdocs/files/OpenLayers/Control/Measure-js.html
index 76f1cfd..1880987 100644
--- a/doc/devdocs/files/OpenLayers/Control/Measure-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Measure-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Measure - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,7 +53,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.measurePartial"></a>measurePartial</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>measurePartial: function(</td><td class="PParameter  prettyprint " nowrap>point,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.measureImmediate"></a>measureImmediate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>measureImmediate : function(</td><td class="PParameter  prettyprint " nowrap>point,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>feature, [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.measureImmediate"></a>measureImmediate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>measureImmediate : function(</td><td class="PParameter  prettyprint " nowrap>point,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>feature, [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Measure.cancelDelay"></a>cancelDelay</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">cancelDelay: function()</td></tr></table></blockquote><p>Cancels the delay measurement that measurePartial began.</p></div></div></div>
 
@@ -73,10 +73,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ModifyFeature-js.html b/doc/devdocs/files/OpenLayers/Control/ModifyFeature-js.html
index f86552a..6c36b1e 100644
--- a/doc/devdocs/files/OpenLayers/Control/ModifyFeature-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ModifyFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ModifyFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,29 +11,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ModifyFeature"></a>OpenLayers.<wbr>Control.<wbr>ModifyFeature</h1><div class=CBody><p>Control to modify features.   When activated, a click renders the vertices of a feature - these vertices can then be dragged.   By default, the delete key will delete the vertex under the mouse.   New features are added by dragging “virtual vertices” between vertices [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ModifyFeature"></a>OpenLayers.<wbr>Control.<wbr>ModifyFeature</h1><div class=CBody><p>Control to modify features.   When activated, a click renders the vertices of a feature - these vertices can then be dragged.   By default, the delete key will delete the vertex under the mouse.   New features are added by dragging “virtual vertices” between vertices [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.Properties"></a>Properties</h3></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.documentDrag"></a>documentDrag</h3><div class=CBody><p>{Boolean} If set to true, dragging vertices will continue even if the mouse cursor leaves the map viewport.  Default is false.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.geometryTypes"></a>geometryTypes</h3><div class=CBody><p>{Array(String)} To restrict modification to a limited set of geometry types, send a list of strings corresponding to the geometry class names.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.clickout"></a>clickout</h3><div class=CBody><p>{Boolean} Unselect features when clicking outside any feature.  Default is true.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.toggle"></a>toggle</h3><div class=CBody><p>{Boolean} Unselect a selected feature on click.  Default is true.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.standalone"></a>standalone</h3><div class=CBody><p>{Boolean} Set to true to create a control without SelectFeature capabilities.  Default is false.   If standalone is true, to modify a feature, call the <a href="#OpenLayers.Control.ModifyFeature.selectFeature" class=LFunction id=link27 onMouseOver="ShowTip(event, 'tt9', 'link27')" onMouseOut="HideTip('tt9')">selectFeature</a> met [...]
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.layer"></a>layer</h3><div class=CBody><p>{<a href="../Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link29 onMouseOver="ShowTip(event, 'tt1', 'link29')" onMouseOut="HideTip('tt1')">OpenLayers.Layer.Vector</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.standalone"></a>standalone</h3><div class=CBody><p>{Boolean} Set to true to create a control without SelectFeature capabilities.  Default is false.   If standalone is true, to modify a feature, call the <a href="#OpenLayers.Control.ModifyFeature.selectFeature" class=LFunction id=link29 onMouseOver="ShowTip(event, 'tt7', 'link29')" onMouseOut="HideTip('tt7')">selectFeature</a> met [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.feature"></a>feature</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link30 onMouseOver="ShowTip(event, 'tt2', 'link30')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} Feature currently available for modification.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.layer"></a>layer</h3><div class=CBody><p>{<a href="../Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link31 onMouseOver="ShowTip(event, 'tt1', 'link31')" onMouseOut="HideTip('tt1')">OpenLayers.Layer.Vector</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.vertices"></a>vertices</h3><div class=CBody><p>{Array(<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link31 onMouseOver="ShowTip(event, 'tt2', 'link31')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>)} Verticies currently available for dragging.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.feature"></a>feature</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link32 onMouseOver="ShowTip(event, 'tt2', 'link32')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} Feature currently available for modification.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.virtualVertices"></a>virtualVertices</h3><div class=CBody><p>{Array(<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link32 onMouseOver="ShowTip(event, 'tt2', 'link32')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>)} Virtual vertices in the middle of each edge.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.vertex"></a>vertex</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link33 onMouseOver="ShowTip(event, 'tt2', 'link33')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} Vertex currently being modified.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.selectControl"></a>selectControl</h3><div class=CBody><p>{<a href="SelectFeature-js.html#OpenLayers.Control.SelectFeature" class=LClass id=link33 onMouseOver="ShowTip(event, 'tt3', 'link33')" onMouseOut="HideTip('tt3')">OpenLayers.Control.SelectFeature</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.vertices"></a>vertices</h3><div class=CBody><p>{Array(<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link34 onMouseOver="ShowTip(event, 'tt2', 'link34')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>)} Verticies currently available for dragging.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragControl"></a>dragControl</h3><div class=CBody><p>{<a href="DragFeature-js.html#OpenLayers.Control.DragFeature" class=LClass id=link34 onMouseOver="ShowTip(event, 'tt4', 'link34')" onMouseOut="HideTip('tt4')">OpenLayers.Control.DragFeature</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.virtualVertices"></a>virtualVertices</h3><div class=CBody><p>{Array(<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link35 onMouseOver="ShowTip(event, 'tt2', 'link35')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>)} Virtual vertices in the middle of each edge.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.handlers"></a>handlers</h3><div class=CBody><p>{Object}</p></div></div></div>
 
@@ -41,7 +41,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.virtualStyle"></a>virtualStyle</h3><div class=CBody><p>{Object} A symbolizer to be used for virtual vertices.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.vertexRenderIntent"></a>vertexRenderIntent</h3><div class=CBody><p>{String} The renderIntent to use for vertices.  If no <a href="#OpenLayers.Control.ModifyFeature.virtualStyle" class=LProperty id=link35 onMouseOver="ShowTip(event, 'tt23', 'link35')" onMouseOut="HideTip('tt23')">virtualStyle</a> is provided, this renderIntent will also be used for virtual vertices, with a fillOpacity  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.vertexRenderIntent"></a>vertexRenderIntent</h3><div class=CBody><p>{String} The renderIntent to use for vertices.  If no <a href="#OpenLayers.Control.ModifyFeature.virtualStyle" class=LProperty id=link36 onMouseOver="ShowTip(event, 'tt24', 'link36')" onMouseOut="HideTip('tt24')">virtualStyle</a> is provided, this renderIntent will also be used for virtual vertices, with a fillOpacity  [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.mode"></a>mode</h3><div class=CBody><p>{Integer} Bitfields specifying the modification mode.  Defaults to OpenLayers.Control.ModifyFeature.RESHAPE.  To set the mode to a combination of options, use the | operator.  For example, to allow the control to both resize and rotate features, use the following syntax</p><blockquote><pre class="prettyprint">control.mode = OpenLayers.C [...]
                OpenLayers.Control.ModifyFeature.ROTATE;</pre></blockquote></div></div></div>
@@ -50,9 +50,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.modified"></a>modified</h3><div class=CBody><p>{Boolean} The currently selected feature has been modified.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.radiusHandle"></a>radiusHandle</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link36 onMouseOver="ShowTip(event, 'tt2', 'link36')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} A handle for rotating/resizing a feature.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.radiusHandle"></a>radiusHandle</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link37 onMouseOver="ShowTip(event, 'tt2', 'link37')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} A handle for rotating/resizing a feature.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragHandle"></a>dragHandle</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link37 onMouseOver="ShowTip(event, 'tt2', 'link37')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} A handle for dragging a feature.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragHandle"></a>dragHandle</h3><div class=CBody><p>{<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link38 onMouseOver="ShowTip(event, 'tt2', 'link38')" onMouseOut="HideTip('tt2')">OpenLayers.Feature.Vector</a>} A handle for dragging a feature.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.onModificationStart"></a>onModificationStart</h3><div class=CBody><p>{Function} <b>Deprecated</b>.   Register for “beforefeaturemodified” instead.  The “beforefeaturemodified” event is triggered on the layer before any modification begins.</p><p>Optional function to be called when a feature is selected to be modified.  The function should expect to be [...]
 
@@ -62,7 +62,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.OpenLayers.Control.ModifyFeature"></a>OpenLayers.<wbr>Control.<wbr>ModifyFeature</h3><div class=CBody><p>Create a new modify feature control.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="../Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link38 onM [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.OpenLayers.Control.ModifyFeature"></a>OpenLayers.<wbr>Control.<wbr>ModifyFeature</h3><div class=CBody><p>Create a new modify feature control.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="../Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link39 onM [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.Functions"></a>Functions</h3></div></div>
 
@@ -72,17 +72,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Deactivate the control.</p><h4 class=CHeading>Returns</h4><p>{Boolean} Successfully deactivated the control.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.beforeSelectFeature"></a>beforeSelectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>beforeSelectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.beforeSelectFeature"></a>beforeSelectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>beforeSelectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.selectFeature"></a>selectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>selectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.selectFeature"></a>selectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>selectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.unselectFeature"></a>unselectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unselectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.unselectFeature"></a>unselectFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unselectFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragStart"></a>dragStart</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dragStart: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixel</td><td class="P [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragStart"></a>dragStart</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dragStart: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragVertex"></a>dragVertex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dragVertex: function(</td><td class="PParameter  prettyprint " nowrap>vertex,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixel</td><td class= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragVertex"></a>dragVertex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dragVertex: function(</td><td class="PParameter  prettyprint " nowrap>vertex,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixel</td><td class= [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragComplete"></a>dragComplete</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dragComplete: function(</td><td class="PParameter  prettyprint " nowrap>vertex</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.dragComplete"></a>dragComplete</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dragComplete: function(</td><td class="PParameter  prettyprint " nowrap>vertex</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.setFeatureState"></a>setFeatureState</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">setFeatureState: function()</td></tr></table></blockquote><p>Called when the feature is modified.   If the current state is not INSERT or DELETE, the state is set to UPDATE.</p></div></div></div>
 
@@ -96,7 +96,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.collectRadiusHandle"></a>collectRadiusHandle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">collectRadiusHandle: function()</td></tr></table></blockquote><p>Collect the radius handle for the selected geometry.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.handleMapEvents"></a>handleMapEvents</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>handleMapEvents: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.moveLayerToTop"></a>moveLayerToTop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">moveLayerToTop: function()</td></tr></table></blockquote><p>Moves the layer for this handler to the top, so mouse events can reach it.</p></div></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.moveLayerBack"></a>moveLayerBack</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">moveLayerBack: function()</td></tr></table></blockquote><p>Moves the layer back to the position determined by the map’s layers array.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ModifyFeature.Constants"></a>Constants</h3></div></div>
 
@@ -114,15 +120,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.Vector are used to render vector data from a variety of sources. </div></div><div class=CToolTip id="tt2"><div class=CClass>Vector features use the OpenLayers.Geometry classes as geometry description. </div></div><div class=CToolTip id="tt3"><div class=CClass>The SelectFeature control selects vector features from a given layer on click or hover.</div></div><div class=CToolTip id="tt4"><div class=CClass>The DragF [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.Vector are used to render vector data from a variety of sources. </div></div><div class=CToolTip id="tt2"><div class=CClass>Vector features use the OpenLayers.Geometry classes as geometry description. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote> [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/MousePosition-js.html b/doc/devdocs/files/OpenLayers/Control/MousePosition-js.html
index 541b442..0177101 100644
--- a/doc/devdocs/files/OpenLayers/Control/MousePosition-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/MousePosition-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.MousePosition - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.MousePosition"></a>OpenLayers.<wbr>Control.<wbr>MousePosition</h1><div class=CBody><p>The MousePosition control displays geographic coordinates of the mouse pointer, as it is moved about the map.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTi [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.MousePosition"></a>OpenLayers.<wbr>Control.<wbr>MousePosition</h1><div class=CBody><p>The MousePosition control displays geographic coordinates of the mouse pointer, as it is moved about the map.</p><p>You can use the <a href="#OpenLayers.Control.MousePosition.prefix" class=LProperty id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">prefix</a [...]
+    prefix: '<a target="_blank" ' +
+        'href="http://spatialreference.org/ref/epsg/4326/">' +
+        'EPSG:4326</a> coordinates: '
+    }
+);</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Control.MousePosition" >OpenLayers.<wbr>Co [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.Properties"></a>Properties</h3></div></div>
 
@@ -19,21 +24,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.element"></a>element</h3><div class=CBody><p>{DOMElement}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.prefix"></a>prefix</h3><div class=CBody><p>{String}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.prefix"></a>prefix</h3><div class=CBody><p>{String} A string to be prepended to the current pointers coordinates when it is rendered.   Defaults to the empty string ‘’.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.separator"></a>separator</h3><div class=CBody><p>{String}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.separator"></a>separator</h3><div class=CBody><p>{String} A string to be used to seperate the two coordinates from each other.   Defaults to the string ‘, ‘, which will result in a rendered coordinate of e.g.  ‘42.12, 21.22’.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.suffix"></a>suffix</h3><div class=CBody><p>{String}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.suffix"></a>suffix</h3><div class=CBody><p>{String} A string to be appended to the current pointers coordinates when it is rendered.   Defaults to the empty string ‘’.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.numDigits"></a>numDigits</h3><div class=CBody><p>{Integer}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.numDigits"></a>numDigits</h3><div class=CBody><p>{Integer} The number of digits each coordinate shall have when being rendered, Defaults to 5.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.granularity"></a>granularity</h3><div class=CBody><p>{Integer}</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.emptyString"></a>emptyString</h3><div class=CBody><p>{String} Set this to some value to set when the mouse is outside the map.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.lastXy"></a>lastXy</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">OpenLayers.Pixel</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.lastXy"></a>lastXy</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link13 onMouseOver="ShowTip(event, 'tt1', 'link13')" onMouseOut="HideTip('tt1')">OpenLayers.Pixel</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt2', 'link12')" onMouseOut="HideTip('tt2')">OpenLayers.Projection</a>} The projection in which the mouse position is displayed</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link14 onMouseOver="ShowTip(event, 'tt2', 'link14')" onMouseOut="HideTip('tt2')">OpenLayers.Projection</a>} The projection in which the mouse position is displayed.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.Constructor"></a>Constructor</h3></div></div>
 
@@ -53,7 +58,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.reset"></a>reset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>reset: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.formatOutput"></a>formatOutput</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>formatOutput: function(</td><td class="PParameter  prettyprint " nowrap>lonLat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MousePosition.formatOutput"></a>formatOutput</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>formatOutput: function(</td><td class="PParameter  prettyprint " nowrap>lonLat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
 </div><!--Content-->
 
@@ -61,15 +66,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>This class represents a screen coordinate, in x and y coordinates</div></div><div class=CToolTip id="tt2"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt4"><div [...]
+<div class=CToolTip id="tt1"><div class=CClass>This class represents a screen coordinate, in x and y coordinates</div></div><div class=CToolTip id="tt2"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt4"><div [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/NavToolbar-js.html b/doc/devdocs/files/OpenLayers/Control/NavToolbar-js.html
index a618635..9c953f1 100644
--- a/doc/devdocs/files/OpenLayers/Control/NavToolbar-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/NavToolbar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.NavToolbar - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Navigation-js.html b/doc/devdocs/files/OpenLayers/Control/Navigation-js.html
index c45a6d5..ea3603b 100644
--- a/doc/devdocs/files/OpenLayers/Control/Navigation-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Navigation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Navigation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Navigation"></a>OpenLayers.<wbr>Control.<wbr>Navigation</h1><div class=CBody><p>The navigation control handles map browsing with mouse events (dragging, double-clicking, and scrolling the wheel).   Create a new navigation control with the <a href="#OpenLayers.Control.Navigation.OpenLayers.Control.Navigation" class=LConstructor id=link19 onMouseOver="ShowTip(event, 'tt19',  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Navigation"></a>OpenLayers.<wbr>Control.<wbr>Navigation</h1><div class=CBody><p>The navigation control handles map browsing with mouse events (dragging, double-clicking, and scrolling the wheel).   Create a new navigation control with the <a href="#OpenLayers.Control.Navigation.OpenLayers.Control.Navigation" class=LConstructor id=link19 onMouseOver="ShowTip(event, 'tt19',  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Navigation.Properties"></a>Properties</h3></div></div>
 
@@ -31,7 +31,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Navigation.zoomWheelEnabled"></a>zoomWheelEnabled</h3><div class=CBody><p>{Boolean} Whether the mousewheel should zoom the map</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Navigation.mouseWheelOptions"></a>mouseWheelOptions</h3><div class=CBody><p>{Object} Options passed to the MouseWheel control (only useful if <a href="#OpenLayers.Control.Navigation.zoomWheelEnabled" class=LProperty id=link24 onMouseOver="ShowTip(event, 'tt3', 'link24')" onMouseOut="HideTip('tt3')">zoomWheelEnabled</a> is set to true)</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Navigation.mouseWheelOptions"></a>mouseWheelOptions</h3><div class=CBody><p>{Object} Options passed to the MouseWheel control (only useful if <a href="#OpenLayers.Control.Navigation.zoomWheelEnabled" class=LProperty id=link24 onMouseOver="ShowTip(event, 'tt3', 'link24')" onMouseOut="HideTip('tt3')">zoomWheelEnabled</a> is set to true).  Default is no options for maps with fractionalZoom set to true [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Navigation.handleRightClicks"></a>handleRightClicks</h3><div class=CBody><p>{Boolean} Whether or not to handle right clicks.  Default is false.</p></div></div></div>
 
@@ -79,10 +79,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/NavigationHistory-js.html b/doc/devdocs/files/OpenLayers/Control/NavigationHistory-js.html
index 382b810..5bb6743 100644
--- a/doc/devdocs/files/OpenLayers/Control/NavigationHistory-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/NavigationHistory-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.NavigationHistory - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -81,10 +81,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/OverviewMap-js.html b/doc/devdocs/files/OpenLayers/Control/OverviewMap-js.html
index 9b7d490..48b115b 100644
--- a/doc/devdocs/files/OpenLayers/Control/OverviewMap-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/OverviewMap-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.OverviewMap - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.OverviewMap"></a>OpenLayers.<wbr>Control.<wbr>OverviewMap</h1><div class=CBody><p>The OverMap control creates a small overview map, useful to display the extent of a zoomed map and your main map and provide additional navigation options to the User.   By default the overview map is drawn in the lower right corner of the main map.  Create a new overview map with the <a [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.OverviewMap"></a>OpenLayers.<wbr>Control.<wbr>OverviewMap</h1><div class=CBody><p>The OverMap control creates a small overview map, useful to display the extent of a zoomed map and your main map and provide additional navigation options to the User.   By default the overview map is drawn in the lower right corner of the main map.  Create a new overview map with the <a [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.Properties"></a>Properties</h3></div></div>
 
@@ -47,6 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.maximized"></a>maximized</h3><div class=CBody><p>{Boolean} Start as maximized (visible).  Defaults to false.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.maximizeTitle"></a>maximizeTitle</h3><div class=CBody><p>{String}  This property is used for showing a tooltip over the maximize div.  Defaults to “” (no title).</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.minimizeTitle"></a>minimizeTitle</h3><div class=CBody><p>{String}  This property is used for showing a tooltip over the minimize div.  Defaults to “” (no title).</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.OverviewMap.OpenLayers.Control.OverviewMap"></a>OpenLayers.<wbr>Control.<wbr>OverviewMap</h3><div class=CBody><p>Create a new overview map</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Properties of this object will be set on the overview map object.   Note, to set optio [...]
@@ -97,10 +101,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Pan-js.html b/doc/devdocs/files/OpenLayers/Control/Pan-js.html
index 5b56d33..4a8b107 100644
--- a/doc/devdocs/files/OpenLayers/Control/Pan-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Pan-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Pan - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,18 +11,16 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Pan"></a>OpenLayers.<wbr>Control.Pan</h1><div class=CBody><p>The Pan control is a single button to pan the map in one direction.  For a more complete control see <a href="PanPanel-js.html#OpenLayers.Control.PanPanel" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Control.PanPanel</a>.</p><h4 class=CHeading>Inherits [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.Pan"></a>OpenLayers.<wbr>Control.Pan</h1><div class=CBody><p>The Pan control is a single button to pan the map in one direction.  For a more complete control see <a href="PanPanel-js.html#OpenLayers.Control.PanPanel" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Control.PanPanel</a>.</p><h4 class=CHeading>Inherits [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.slideFactor"></a>slideFactor</h3><div class=CBody><p>{Integer} Number of pixels by which we’ll pan the map in any direction on clicking the arrow buttons, defaults to 50.   If you want to pan by some ratio of the map dimensions, use <a href="#OpenLayers.Control.Pan.slideRatio" class=LProperty id=link6 onMouseOver="ShowTip(event, 'tt5', 'link6')" onMouseOut="HideTip('tt5')">slideRatio</a>  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.slideFactor"></a>slideFactor</h3><div class=CBody><p>{Integer} Number of pixels by which we’ll pan the map in any direction on clicking the arrow buttons, defaults to 50.   If you want to pan by some ratio of the map dimensions, use <a href="#OpenLayers.Control.Pan.slideRatio" class=LProperty id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">slideRatio</a>  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.slideRatio"></a>slideRatio</h3><div class=CBody><p>{Number} The fraction of map width/height by which we’ll pan the map on clicking the arrow buttons.   Default is null.   If set, will override <a href="#OpenLayers.Control.Pan.slideFactor" class=LProperty id=link7 onMouseOver="ShowTip(event, 'tt6', 'link7')" onMouseOut="HideTip('tt6')">slideFactor</a>.  E.g. if slideRatio is .5, [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.slideRatio"></a>slideRatio</h3><div class=CBody><p>{Number} The fraction of map width/height by which we’ll pan the map on clicking the arrow buttons.   Default is null.   If set, will override <a href="#OpenLayers.Control.Pan.slideFactor" class=LProperty id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">slideFactor</a>.  E.g. if slideRatio is .5, [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.direction"></a>direction</h3><div class=CBody><p>{String} in {‘North’, ‘South’, ‘East’, ‘West’}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.type"></a>type</h3><div class=CBody><p>{String} The type of <a href="../Control-js.html#OpenLayers.Control" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt1', 'link8')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a> -- When added to a <a href="Panel-js.html#OpenLayers.Control.Panel" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt2', 'link9')" onMouseOut="HideTip('tt2')">Control.Panel [...]
-
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Pan.OpenLayers.Control.Pan"></a>OpenLayers.<wbr>Control.Pan</h3><div class=CBody><p>Control which handles the panning (in any of the cardinal directions) of the map by a set px distance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>direction</td><td class=CDLDescription>{String} The direction this button should pan.</td [...]
@@ -37,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>The Panel control is a container for other controls. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt4"><div class=CClass>The PanP [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CClass>The PanPanel is visible control for panning the map North, South, East or West in small steps. </div></div><div class=CToolTip id="tt3"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CT [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/PanPanel-js.html b/doc/devdocs/files/OpenLayers/Control/PanPanel-js.html
index 2cd7dd6..36f48c0 100644
--- a/doc/devdocs/files/OpenLayers/Control/PanPanel-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/PanPanel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PanPanel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/PanZoom-js.html b/doc/devdocs/files/OpenLayers/Control/PanZoom-js.html
index 01deb84..aeb5b19 100644
--- a/doc/devdocs/files/OpenLayers/Control/PanZoom-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/PanZoom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PanZoom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/PanZoomBar-js.html b/doc/devdocs/files/OpenLayers/Control/PanZoomBar-js.html
index 09a00dd..45835f7 100644
--- a/doc/devdocs/files/OpenLayers/Control/PanZoomBar-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/PanZoomBar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PanZoomBar - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -73,10 +73,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Panel-js.html b/doc/devdocs/files/OpenLayers/Control/Panel-js.html
index 7cdd6c8..f223c6b 100644
--- a/doc/devdocs/files/OpenLayers/Control/Panel-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Panel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Panel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -81,10 +81,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Permalink-js.html b/doc/devdocs/files/OpenLayers/Control/Permalink-js.html
index 4c1cfb8..023e1b0 100644
--- a/doc/devdocs/files/OpenLayers/Control/Permalink-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Permalink-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Permalink - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/PinchZoom-js.html b/doc/devdocs/files/OpenLayers/Control/PinchZoom-js.html
index 933e080..273cc20 100644
--- a/doc/devdocs/files/OpenLayers/Control/PinchZoom-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/PinchZoom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.PinchZoom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,38 +11,32 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h1><div class=CBody><h4 class=CHeading>Inherits</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorde [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h1><div class=CBody><h4 class=CHeading>Inherits</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Control</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorde [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.type"></a>type</h3><div class=CBody><p>{OpenLayers.Control.TYPES}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.containerCenter"></a>containerCenter</h3><div class=CBody><p>{Object} Cached object representing the layer container center (in pixels).</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.pinchOrigin"></a>pinchOrigin</h3><div class=CBody><p>{Object} Cached object representing the pinch start (in pixels).</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.currentCenter"></a>currentCenter</h3><div class=CBody><p>{Object} Cached object representing the latest pinch center (in pixels).</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.autoActivate"></a>autoActivate</h3><div class=CBody><p>{Boolean} Activate the control when it is added to a map.   Default is true.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.preserveCenter"></a>preserveCenter</h3><div class=CBody><p>{Boolean} Set this to true if you don’t want the map center to change while pinching.  For example you may want to set preserveCenter to true when the user location is being watched and you want to preserve the user location at the center of the map even if he zooms in or out using pinch.  This property’s value ca [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.handlerOptions"></a>handlerOptions</h3><div class=CBody><p>{Object} Used to set non-default properties on the pinch handler</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.OpenLayers.Control.PinchZoom"></a>OpenLayers.<wbr>Control.<wbr>PinchZoom</h3><div class=CBody><p>Create a control for zooming with pinch gestures.   This works on devices with multi-touch support.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.activate"></a>activate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote><p>Activate this control.   Must be called after the control is added to a map.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The control was successfully activated.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Deactivate this control.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The control was successfully deactivated.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.updateContainerCenter"></a>updateContainerCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">updateContainerCenter: function()</td></tr></table></blockquote><p>Must be called each time the layer container moves.</p></div></div></div>
-
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.pinchStart"></a>pinchStart</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>pinchStart: function(</td><td class="PParameter  prettyprint " nowrap>evt,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pinchData</td><td class="PA [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.pinchMove"></a>pinchMove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>pinchMove: function(</td><td class="PParameter  prettyprint " nowrap>evt,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pinchData</td><td class="PAfte [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.applyTransform"></a>applyTransform</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>applyTransform: function(</td><td class="PParameter  prettyprint " nowrap>transform</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
-
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.PinchZoom.pinchDone"></a>pinchDone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>pinchDone: function(</td><td class="PParameter  prettyprint " nowrap>evt,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>start,</td></tr><tr><td></td>< [...]
 
 </div><!--Content-->
@@ -51,15 +45,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote>Activate this control. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote>Deactivate this control.</div></div><div class=CT [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>pinchStart: function(</td><td class="PParameter  prettyprint " nowrap>evt,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pinchData</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></ [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/SLDSelect-js.html b/doc/devdocs/files/OpenLayers/Control/SLDSelect-js.html
index 7548f7a..05c68f2 100644
--- a/doc/devdocs/files/OpenLayers/Control/SLDSelect-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/SLDSelect-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.SLDSelect - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -34,7 +34,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
         layerOptions: {
             styleMap: new OpenLayers.StyleMap({
                 "default": {strokeColor: "yellow"}
-            });
+            })
         }
     }
 });</pre></blockquote></div></div></div>
@@ -45,7 +45,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.OpenLayers.Control.SLDSelect"></a>OpenLayers.<wbr>Control.<wbr>SLDSelect</h3><div class=CBody><p>Create a new control for selecting features in WMS layers using Styled Layer Descriptor (SLD).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handler</td><td class=CDLDescription>{<a href="../../deprecated-js.html#Op [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.OpenLayers.Control.SLDSelect"></a>OpenLayers.<wbr>Control.<wbr>SLDSelect</h3><div class=CBody><p>Create a new control for selecting features in WMS layers using Styled Layer Descriptor (SLD).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handler</td><td class=CDLDescription>{<a href="../BaseTypes/Class-js.html# [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.Functions"></a>Functions</h3></div></div>
 
@@ -53,23 +53,23 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.coupleLayerVisiblity"></a>coupleLayerVisiblity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>coupleLayerVisiblity: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.createSelectionLayer"></a>createSelectionLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createSelectionLayer: function(</td><td class="PParameter  prettyprint " nowrap>source</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.createSelectionLayer"></a>createSelectionLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createSelectionLayer: function(</td><td class="PParameter  prettyprint " nowrap>source</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.createSLD"></a>createSLD</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createSLD: function(</td><td class="PParameter  prettyprint " nowrap>layer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>filters,</td></tr><tr><td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.createSLD"></a>createSLD</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createSLD: function(</td><td class="PParameter  prettyprint " nowrap>layer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>filters,</td></tr><tr><td></ [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.parseDescribeLayer"></a>parseDescribeLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseDescribeLayer: function(</td><td class="PParameter  prettyprint " nowrap>request</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.getGeometryAttributes"></a>getGeometryAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getGeometryAttributes: function(</td><td class="PParameter  prettyprint " nowrap>layer</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.getGeometryAttributes"></a>getGeometryAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getGeometryAttributes: function(</td><td class="PParameter  prettyprint " nowrap>layer</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.activate"></a>activate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote><p>Activate the control.  Activating the control will perform a SLD WMS DescribeLayer request followed by a WFS DescribeFeatureType request so that the proper symbolizers can be chosen based on  [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Deactivate the control.  If clearOnDeactivate is true, remove the selection layer(s).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.setLayers"></a>setLayers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setLayers: function(</td><td class="PParameter  prettyprint " nowrap>layers</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.setLayers"></a>setLayers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setLayers: function(</td><td class="PParameter  prettyprint " nowrap>layers</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.createFilter"></a>createFilter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFilter: function(</td><td class="PParameter  prettyprint " nowrap>geometryAttribute,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.createFilter"></a>createFilter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFilter: function(</td><td class="PParameter  prettyprint " nowrap>geometryAttribute,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.select"></a>select</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>select: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.select"></a>select</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>select: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.SLDSelect.applySelection"></a>applySelection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">applySelection: function()</td></tr></table></blockquote><p>Checks if all required wfs data is cached, and applies the selection</p></div></div></div>
 
@@ -79,15 +79,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Scale-js.html b/doc/devdocs/files/OpenLayers/Control/Scale-js.html
index 6d615c6..346cf81 100644
--- a/doc/devdocs/files/OpenLayers/Control/Scale-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Scale-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Scale - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ScaleLine-js.html b/doc/devdocs/files/OpenLayers/Control/ScaleLine-js.html
index 8a83afe..76297d7 100644
--- a/doc/devdocs/files/OpenLayers/Control/ScaleLine-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ScaleLine-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ScaleLine - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/SelectFeature-js.html b/doc/devdocs/files/OpenLayers/Control/SelectFeature-js.html
index 12a8806..63037b7 100644
--- a/doc/devdocs/files/OpenLayers/Control/SelectFeature-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/SelectFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.SelectFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -103,10 +103,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Snapping-js.html b/doc/devdocs/files/OpenLayers/Control/Snapping-js.html
index 290bd12..a919c02 100644
--- a/doc/devdocs/files/OpenLayers/Control/Snapping-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Snapping-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Snapping - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,7 +39,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.OpenLayers.Control.Snapping"></a>OpenLayers.<wbr>Control.<wbr>Snapping</h3><div class=CBody><p>Creates a new snapping control.  A control is constructed with an editable layer and a set of configuration objects for target layers.  While the control is active, dragging vertices while drawing new features or modifying existing features on the editable layer will engage snapping to fe [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.OpenLayers.Control.Snapping"></a>OpenLayers.<wbr>Control.<wbr>Snapping</h3><div class=CBody><p>Creates a new snapping control.  A control is constructed with an editable layer and a set of configuration objects for target layers.  While the control is active, dragging vertices while drawing new features or modifying existing features on the editable layer will engage snapping to fe [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Snapping.Functions"></a>Functions</h3></div></div>
 
@@ -77,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Split-js.html b/doc/devdocs/files/OpenLayers/Control/Split-js.html
index b3b1701..56f935e 100644
--- a/doc/devdocs/files/OpenLayers/Control/Split-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Split-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Split - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -69,10 +69,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/TouchNavigation-js.html b/doc/devdocs/files/OpenLayers/Control/TouchNavigation-js.html
index a522bb0..92f545f 100644
--- a/doc/devdocs/files/OpenLayers/Control/TouchNavigation-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/TouchNavigation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.TouchNavigation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.TouchNavigation"></a>OpenLayers.<wbr>Control.<wbr>TouchNavigation</h1><div class=CBody><p>The navigation control handles map browsing with touch events (dragging, double-tapping, tap with two fingers, and pinch zoom).   Create a new control with the <a href="#OpenLayers.Control.TouchNavigation.OpenLayers.Control.TouchNavigation" class=LConstructor id=link8 onMouseOver="Sho [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.TouchNavigation"></a>OpenLayers.<wbr>Control.<wbr>TouchNavigation</h1><div class=CBody><p>The navigation control handles map browsing with touch events (dragging, double-tapping, tap with two fingers, and pinch zoom).   Create a new control with the <a href="#OpenLayers.Control.TouchNavigation.OpenLayers.Control.TouchNavigation" class=LConstructor id=link8 onMouseOver="Sho [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.TouchNavigation.Properties"></a>Properties</h3></div></div>
 
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/TransformFeature-js.html b/doc/devdocs/files/OpenLayers/Control/TransformFeature-js.html
index cc6431e..b67e00e 100644
--- a/doc/devdocs/files/OpenLayers/Control/TransformFeature-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/TransformFeature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.TransformFeature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -86,10 +86,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/UTFGrid-js.html b/doc/devdocs/files/OpenLayers/Control/UTFGrid-js.html
index ea2f9fc..fe40007 100644
--- a/doc/devdocs/files/OpenLayers/Control/UTFGrid-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/UTFGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.UTFGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -62,10 +62,10 @@ var control = new OpenLayers.Control.UTFGrid({
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html b/doc/devdocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html
index 1ba9940..fb7971a 100644
--- a/doc/devdocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/WMSGetFeatureInfo-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.WMSGetFeatureInfo - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -86,10 +86,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html b/doc/devdocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html
index 6cdd8d3..5de7dd0 100644
--- a/doc/devdocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/WMTSGetFeatureInfo-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.WMTSGetFeatureInfo - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -78,10 +78,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/Zoom-js.html b/doc/devdocs/files/OpenLayers/Control/Zoom-js.html
index ad7f930..93ded39 100644
--- a/doc/devdocs/files/OpenLayers/Control/Zoom-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/Zoom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.Zoom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomInId"></a>zoomInId</h3><div class=CBody><p>{String} Instead of having the control create a zoom in link, you can provide the identifier for an anchor element already added to the document.  By default, an element with id “olZoomInLink” will be searched for and used if it exists.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomOutText"></a>zoomOutText</h3><div class=CBody><p>{String} Text for zoom-out link.   Default is “-”.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomOutText"></a>zoomOutText</h3><div class=CBody><p>{String} Text for zoom-out link.   Default is “\u2212”.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.Zoom.zoomOutId"></a>zoomOutId</h3><div class=CBody><p>{String} Instead of having the control create a zoom out link, you can provide the identifier for an anchor element already added to the document.  By default, an element with id “olZoomOutLink” will be searched for and used if it exists.</p></div></div></div>
 
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ZoomBox-js.html b/doc/devdocs/files/OpenLayers/Control/ZoomBox-js.html
index f124425..e60684f 100644
--- a/doc/devdocs/files/OpenLayers/Control/ZoomBox-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ZoomBox-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomBox - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomBox"></a>OpenLayers.<wbr>Control.<wbr>ZoomBox</h1><div class=CBody><p>The ZoomBox control enables zooming directly to a given extent, by drawing a box on the map.  The box is drawn by holding down shift, whilst dragging the mouse.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link3 onMouseOver="ShowTip(e [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomBox"></a>OpenLayers.<wbr>Control.<wbr>ZoomBox</h1><div class=CBody><p>The ZoomBox control enables zooming directly to a given extent, by drawing a box on the map.  The box is drawn by holding down shift, whilst dragging the mouse.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link3 onMouseOver="ShowTip(e [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.Properties"></a>Properties</h3></div></div>
 
@@ -21,7 +21,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.keyMask"></a>keyMask</h3><div class=CBody><p>{Integer} Zoom only occurs if the keyMask matches the combination of keys down.  Use bitwise operators and one or more of the <a href="../Handler-js.html#OpenLayers.Handler" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Handler</a> constants to construct a keyMask.  Leave null if no [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.alwaysZoom"></a>alwaysZoom</h3><div class=CBody><p>{Boolean} Always zoom in/out, when box drawed</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.alwaysZoom"></a>alwaysZoom</h3><div class=CBody><p>{Boolean} Always zoom in/out when box drawn, even if the zoom level does not change.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.zoomOnClick"></a>zoomOnClick</h3><div class=CBody><p>{Boolean} Should we zoom when no box was dragged, i.e. the user only clicked?  Default is true.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomBox.Functions"></a>Functions</h3></div></div>
 
@@ -35,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ZoomIn-js.html b/doc/devdocs/files/OpenLayers/Control/ZoomIn-js.html
index 72dfed3..457040f 100644
--- a/doc/devdocs/files/OpenLayers/Control/ZoomIn-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ZoomIn-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomIn - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomIn"></a>OpenLayers.<wbr>Control.<wbr>ZoomIn</h1><div class=CBody><p>The ZoomIn control is a button to increase the zoom level of a map.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt1', 'link4')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a></li></ul><!--START_ND_SUMM [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomIn.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomIn.type"></a>type</h3><div class=CBody><p>{String} The type of <a href="../Control-js.html#OpenLayers.Control" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a> -- When added to a <a href="Panel-js.html#OpenLayers.Control.Panel" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt2', 'link6')" onMouseOut="HideTip('tt2')">Control.Pa [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomIn"></a>OpenLayers.<wbr>Control.<wbr>ZoomIn</h1><div class=CBody><p>The ZoomIn control is a button to increase the zoom level of a map.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Control</a></li></ul><!--START_ND_SUMM [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomIn.Functions"></a>Functions</h3></div></div>
 
@@ -27,15 +23,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>The Panel control is a container for other controls. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote></div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CClass>Controls affect the display or behavior of the map. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ZoomOut-js.html b/doc/devdocs/files/OpenLayers/Control/ZoomOut-js.html
index 051bbc7..06862f7 100644
--- a/doc/devdocs/files/OpenLayers/Control/ZoomOut-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ZoomOut-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomOut - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomOut"></a>OpenLayers.<wbr>Control.<wbr>ZoomOut</h1><div class=CBody><p>The ZoomOut control is a button to decrease the zoom level of a map.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt1', 'link4')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a></li></ul><!--START_ND_S [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomOut.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomOut.type"></a>type</h3><div class=CBody><p>{String} The type of <a href="../Control-js.html#OpenLayers.Control" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt1', 'link5')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a> -- When added to a <a href="Panel-js.html#OpenLayers.Control.Panel" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt2', 'link6')" onMouseOut="HideTip('tt2')">Control.P [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomOut"></a>OpenLayers.<wbr>Control.<wbr>ZoomOut</h1><div class=CBody><p>The ZoomOut control is a button to decrease the zoom level of a map.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Control-js.html#OpenLayers.Control" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Control</a></li></ul><!--START_ND_S [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomOut.Functions"></a>Functions</h3></div></div>
 
@@ -27,15 +23,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>The Panel control is a container for other controls. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote></div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CClass>Controls affect the display or behavior of the map. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ZoomPanel-js.html b/doc/devdocs/files/OpenLayers/Control/ZoomPanel-js.html
index de50591..464af1f 100644
--- a/doc/devdocs/files/OpenLayers/Control/ZoomPanel-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ZoomPanel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomPanel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html b/doc/devdocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html
index cd951e4..e60bd76 100644
--- a/doc/devdocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html
+++ b/doc/devdocs/files/OpenLayers/Control/ZoomToMaxExtent-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Control.ZoomToMaxExtent - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,15 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent"></a>OpenLayers.<wbr>Control.<wbr>ZoomToMaxExtent</h1><div class=CBody><p>The ZoomToMaxExtent control is a button that zooms out to the maximum extent of the map.  It is designed to be used with a <a href="Panel-js.html#OpenLayers.Control.Panel" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt2', 'link4')" onMouseOut="HideTip('tt2')">OpenLayers.Control [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent.type"></a>type</h3><div class=CBody><p>{String} The type of <a href="../Control-js.html#OpenLayers.Control" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a> -- When added to a <a href="Panel-js.html#OpenLayers.Control.Panel" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt2', 'link7')" onMouseOut="HideTip('tt2')">C [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent"></a>OpenLayers.<wbr>Control.<wbr>ZoomToMaxExtent</h1><div class=CBody><p>The ZoomToMaxExtent control is a button that zooms out to the maximum extent of the map.  It is designed to be used with a <a href="Panel-js.html#OpenLayers.Control.Panel" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Control [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent.trigger"></a>trigger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote><p>Do the zoom.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.ZoomToMaxExtent.trigger"></a>trigger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote><p>Called whenever this control is being rendered inside of a panel and a click occurs on this controls element.  Actually zooms to the maximum extent of this controls map.</p></div></div></div>
 
 </div><!--Content-->
 
@@ -27,15 +23,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([2, 3, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([2, 3, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>The Panel control is a container for other controls. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote>Do the zoom.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">trigger: function()</td></tr></table></blockquote>Called whenever this control is being rendered inside of a panel and a click occurs on this controls element. </div></div><div class=CToolTip id="tt2"><div class=CClass>The Panel control is a container for other controls. </div></div><div class=CToolTip id="tt3"><div class=CClass>Controls  [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Events-js.html b/doc/devdocs/files/OpenLayers/Events-js.html
index ef4f4d0..d8cb44c 100644
--- a/doc/devdocs/files/OpenLayers/Events-js.html
+++ b/doc/devdocs/files/OpenLayers/Events-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Event - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Event"></a>OpenLayers.<wbr>Event</h1><div class=CBody><p>Utility functions for event handling.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Event" >OpenLayers.<wbr>Event</a></td><td class=SDescription>Utility functions for ev [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Event"></a>OpenLayers.<wbr>Event</h1><div class=CBody><p>Utility functions for event handling.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Event" >OpenLayers.<wbr>Event</a></td><td class=SDescription>Utility functions for ev [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Event.Properties"></a>Properties</h3></div></div>
 
@@ -53,6 +53,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Event.stop"></a>stop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>stop: function(</td><td class="PParameter  prettyprint " nowrap>event,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>allowDefault</td><td class="PAfterParameters  prettypri [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Event.preventDefault"></a>preventDefault</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>preventDefault: function(</td><td class="PParameter  prettyprint " nowrap>event</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Event.findElement"></a>findElement</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>findElement: function(</td><td class="PParameter  prettyprint " nowrap>event,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>tagName</td><td class="PAfterParam [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Event.observe"></a>observe</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>observe: function(</td><td class="PParameter  prettyprint " nowrap>elementParam,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class=" [...]
@@ -65,7 +67,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Event.unloadCache"></a>unloadCache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">unloadCache: function()</td></tr></table></blockquote><p>Cycle through all the element entries in the events cache and call stopObservingElement on each.</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events"></a>OpenLayers.<wbr>Events</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Events.Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Events.B [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events"></a>OpenLayers.<wbr>Events</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Events.Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Events.B [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.Constants"></a>Constants</h3></div></div>
 
@@ -85,7 +87,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.includeXY"></a>includeXY</h3><div class=CBody><p>{Boolean} Should the .xy property automatically be created for browser mouse events?  In general, this should be false.  If it is true, then mouse events will automatically generate a ‘.xy’ property on the event object that is passed.  (Prior to OpenLayers 2.7, this was true by default.)  Otherwise, you can call the getMouse [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.extensions"></a>extensions</h3><div class=CBody><p>{Object} Event extensions registered with this instance.  Keys are event types, values are {OpenLayers.Events.*} extension instances or {Boolean} for events that an instantiated extension provides in addition to the one it was created for.</p><p>Extensions create an event in addition to browser events, which usually fires when a sequence of browser  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.extensions"></a>extensions</h3><div class=CBody><p>{Object} Event extensions registered with this instance.  Keys are event types, values are {OpenLayers.Events.*} extension instances or {Boolean} for events that an instantiated extension provides in addition to the one it was created for.</p><p>Extensions create an event in addition to browser events, which usually fires when a sequence of browser  [...]
     initialize: function(target) {
         this.target = target;
         this.target.register("click", this, this.doStuff, {extension: true});
@@ -117,11 +119,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 // only required if extension provides more than one event type
 OpenLayers.Events.fooend = OpenLayers.Events.foostart;</pre></blockquote></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.extensionCount"></a>extensionCount</h3><div class=CBody><p>{Object} Keys are event types (like in <a href="#OpenLayers.Events.listeners" class=LProperty id=link50 onMouseOver="ShowTip(event, 'tt13', 'link50')" onMouseOut="HideTip('tt13')">listeners</a>), values are the number of extension listeners for each event type.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.extensionCount"></a>extensionCount</h3><div class=CBody><p>{Object} Keys are event types (like in <a href="#OpenLayers.Events.listeners" class=LProperty id=link62 onMouseOver="ShowTip(event, 'tt14', 'link62')" onMouseOut="HideTip('tt14')">listeners</a>), values are the number of extension listeners for each event type.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.clearMouseListener"></a>clearMouseListener</h3><div class=CBody><p>A version of <a href="#OpenLayers.Events.clearMouseCache" class=LFunction id=link51 onMouseOver="ShowTip(event, 'tt14', 'link51')" onMouseOut="HideTip('tt14')">clearMouseCache</a> that is bound to this instance so that it can be used with <a href="#OpenLayers.Event.observe" class=LFunction id=link52 onMouseOver="ShowTip(event, 'tt8', 'lin [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.clearMouseListener"></a>clearMouseListener</h3><div class=CBody><p>A version of <a href="#OpenLayers.Events.clearMouseCache" class=LFunction id=link63 onMouseOver="ShowTip(event, 'tt15', 'link63')" onMouseOut="HideTip('tt15')">clearMouseCache</a> that is bound to this instance so that it can be used with <a href="#OpenLayers.Event.observe" class=LFunction id=link64 onMouseOver="ShowTip(event, 'tt9', 'lin [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.Constructor"></a>Constructor</h3></div></div>
 
@@ -135,7 +137,7 @@ OpenLayers.Events.fooend = OpenLayers.Events.foostart;</pre></blockquote></div><
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.attachToElement"></a>attachToElement</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>attachToElement: function (</td><td class="PParameter  prettyprint " nowrap>element</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.on"></a>on</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>on: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.on"></a>on</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>on: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
 events.on({"loadstart": loadStartListener});
 
 // this is equivalent to the following
@@ -156,7 +158,7 @@ events.register("loadend", object, loadEndListener);</pre></blockquote
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.registerPriority"></a>registerPriority</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>registerPriority: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.un"></a>un</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.un"></a>un</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Convenience method f [...]
 events.un({"loadstart": loadStartListener});
 
 // this is equivalent to the following
@@ -177,13 +179,23 @@ events.unregister("loadend", object, loadEndListener);</pre></blockquo
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.remove"></a>remove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>remove: function(</td><td class="PParameter  prettyprint " nowrap>type</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Remove all [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.triggerEvent"></a>triggerEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>triggerEvent: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParam [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.triggerEvent"></a>triggerEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>triggerEvent: function (</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParam [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.handleBrowserEvent"></a>handleBrowserEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>handleBrowserEvent: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.getTouchClientXY"></a>getTouchClientXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTouchClientXY: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.clearMouseCache"></a>clearMouseCache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearMouseCache: function()</td></tr></table></blockquote><p>Clear cached data about the mouse position.  This should be called any time the element that events are registered on changes position within the page.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.getMousePosition"></a>getMousePosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMousePosition: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.getMousePosition"></a>getMousePosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMousePosition: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.addMsTouchListener"></a>addMsTouchListener</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addMsTouchListener: function (</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>type,</td [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.addMsTouchListenerStart"></a>addMsTouchListenerStart</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addMsTouchListenerStart: function(</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " no [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.addMsTouchListenerMove"></a>addMsTouchListenerMove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addMsTouchListenerMove: function (</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowr [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.addMsTouchListenerEnd"></a>addMsTouchListenerEnd</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addMsTouchListenerEnd: function (</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap> [...]
 
 </div><!--Content-->
 
@@ -191,15 +203,15 @@ events.unregister("loadend", object, loadEndListener);</pre></blockquo
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>element: function(</td><td class="PParameter  prettyprint " nowrap>event</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Cross browser event element detection.</div></div><div class=CToolTip id="tt2"><div cl [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>element: function(</td><td class="PParameter  prettyprint " nowrap>event</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Cross browser event element detection.</div></div><div class=CToolTip id="tt2"><div cl [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Events/buttonclick-js.html b/doc/devdocs/files/OpenLayers/Events/buttonclick-js.html
index 278d468..1000259 100644
--- a/doc/devdocs/files/OpenLayers/Events/buttonclick-js.html
+++ b/doc/devdocs/files/OpenLayers/Events/buttonclick-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Events.buttonclick - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Events.buttonclick"></a>OpenLayers.<wbr>Events.<wbr>buttonclick</h1><div class=CBody><p>Extension event type for handling buttons on top of a dom element.  This event type fires “buttonclick” on its <a href="#OpenLayers.Events.buttonclick.target" class=LProperty id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">target</a> when a button w [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Events.buttonclick"></a>OpenLayers.<wbr>Events.<wbr>buttonclick</h1><div class=CBody><p>Extension event type for handling buttons on top of a dom element.  This event type fires “buttonclick” on its <a href="#OpenLayers.Events.buttonclick.target" class=LProperty id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">target</a> when a button w [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.buttonclick.Properties"></a>Properties</h3></div></div>
 
@@ -37,6 +37,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.buttonclick.getPressedButton"></a>getPressedButton</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPressedButton: function(</td><td class="PParameter  prettyprint " nowrap>element</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.buttonclick.ignore"></a>ignore</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>ignore: function(</td><td class="PParameter  prettyprint " nowrap>element</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.buttonclick.buttonClick"></a>buttonClick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buttonClick: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table> [...]
 
 </div><!--Content-->
@@ -45,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPressedButton: function(</td><td class="PPara [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPressedButton: function(</td><td class="PPara [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Events/featureclick-js.html b/doc/devdocs/files/OpenLayers/Events/featureclick-js.html
new file mode 100644
index 0000000..51212b4
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Events/featureclick-js.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Events.featureclick - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Events.featureclick"></a>OpenLayers.<wbr>Events.<wbr>featureclick</h1><div class=CBody><p>Extension event type for handling feature click events, including overlapping features.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>featureclick</li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspa [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.cache"></a>cache</h3><div class=CBody><p>{Object} A cache of features under the mouse.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.map"></a>map</h3><div class=CBody><p>{<a href="../Map-js.html#OpenLayers.Map" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">OpenLayers.Map</a>} The map to register browser events on.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.provides"></a>provides</h3><div class=CBody><p>{Array(String)} The event types provided by this extension.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.OpenLayers.Events.featureclick"></a>OpenLayers.<wbr>Events.<wbr>featureclick</h3><div class=CBody><p>Create a new featureclick event type.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>target</td><td class=CDLDescription>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} The e [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>start: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>S [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.cancel"></a>cancel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cancel: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.onClick"></a>onClick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>onClick: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.onMousemove"></a>onMousemove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>onMousemove: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.triggerEvent"></a>triggerEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>triggerEvent: function(</td><td class="PParameter  prettyprint " nowrap>type,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>evt</td><td class= [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.getFeatures"></a>getFeatures</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatures: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Events.featureclick.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Clean up.</p></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events.nofeatureclick"></a>OpenLayers.<wbr>Events.<wbr>nofeatureclick</h2><div class=CBody><p>Extension event type for handling click events that do not hit a feature.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>nofeatureclick</li></ul></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events.featureover"></a>OpenLayers.<wbr>Events.<wbr>featureover</h2><div class=CBody><p>Extension event type for handling hovering over a feature.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>featureover</li></ul></div></div></div>
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Events.featureout"></a>OpenLayers.<wbr>Events.<wbr>featureout</h2><div class=CBody><p>Extension event type for handling leaving a feature.</p><h4 class=CHeading>Event types provided by this extension</h4><ul><li>featureout</li></ul></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Map are interactive maps embedded in a web page. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Feature-js.html b/doc/devdocs/files/OpenLayers/Feature-js.html
index 94f1979..f2cd348 100644
--- a/doc/devdocs/files/OpenLayers/Feature-js.html
+++ b/doc/devdocs/files/OpenLayers/Feature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Feature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h1><div class=CBody><p>Features are combinations of geography and attributes.  The OpenLayers.Feature class specifically combines a marker and a lonlat.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a hr [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h1><div class=CBody><p>Features are combinations of geography and attributes.  The OpenLayers.Feature class specifically combines a marker and a lonlat.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a hr [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Properties"></a>Properties</h3></div></div>
 
@@ -19,19 +19,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.id"></a>id</h3><div class=CBody><p>{String}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.lonlat"></a>lonlat</h3><div class=CBody><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">OpenLayers.LonLat</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.lonlat"></a>lonlat</h3><div class=CBody><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">OpenLayers.LonLat</a>}</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.data"></a>data</h3><div class=CBody><p>{Object}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.marker"></a>marker</h3><div class=CBody><p>{<a href="Marker-js.html#OpenLayers.Marker" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt2', 'link11')" onMouseOut="HideTip('tt2')">OpenLayers.Marker</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.marker"></a>marker</h3><div class=CBody><p>{<a href="Marker-js.html#OpenLayers.Marker" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt2', 'link12')" onMouseOut="HideTip('tt2')">OpenLayers.Marker</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.popupClass"></a>popupClass</h3><div class=CBody><p>{<a href="../deprecated-js.html#OpenLayers.Class" class=LClass >OpenLayers.Class</a>} The class which will be used to instantiate a new Popup.  Default is <a href="Popup/Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.popupClass"></a>popupClass</h3><div class=CBody><p>{<a href="BaseTypes/Class-js.html#OpenLayers.Class" class=LConstructor id=link13 onMouseOver="ShowTip(event, 'tt3', 'link13')" onMouseOut="HideTip('tt3')">OpenLayers.Class</a>} The class which will be used to instantiate a new Popup.  Default is <a href="Popup/Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>.< [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.popup"></a>popup</h3><div class=CBody><p>{<a href="Popup-js.html#OpenLayers.Popup" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt3', 'link12')" onMouseOut="HideTip('tt3')">OpenLayers.Popup</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.popup"></a>popup</h3><div class=CBody><p>{<a href="Popup-js.html#OpenLayers.Popup" class=LClass id=link14 onMouseOver="ShowTip(event, 'tt4', 'link14')" onMouseOut="HideTip('tt4')">OpenLayers.Popup</a>}</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h3><div class=CBody><p>Constructor for features.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescripti [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.OpenLayers.Feature"></a>OpenLayers.<wbr>Feature</h3><div class=CBody><p>Constructor for features.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layer</td><td class=CDLDescription>{<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescripti [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Functions"></a>Functions</h3></div></div>
 
@@ -39,11 +39,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.onScreen"></a>onScreen</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onScreen:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean} Whether or not the feature is currently visible on screen (based on its ‘lonlat’ property)</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.createMarker"></a>createMarker</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createMarker: function()</td></tr></table></blockquote><p>Based on the data associated with the Feature, create and return a marker object.</p><h4 class=CHeading>Returns</h4><p>{<a href="Marker-js.html#OpenLayers.Marker" class=LClass id=link15 onMouseO [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.createMarker"></a>createMarker</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createMarker: function()</td></tr></table></blockquote><p>Based on the data associated with the Feature, create and return a marker object.</p><h4 class=CHeading>Returns</h4><p>{<a href="Marker-js.html#OpenLayers.Marker" class=LClass id=link17 onMouseO [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.destroyMarker"></a>destroyMarker</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroyMarker: function()</td></tr></table></blockquote><p>Destroys marker.  If user overrides the createMarker() function, s/he should be able to also specify an alternative function for destroying it</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.createPopup"></a>createPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createPopup: function(</td><td class="PParameter  prettyprint " nowrap>closeBox</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bloc [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.createPopup"></a>createPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createPopup: function(</td><td class="PParameter  prettyprint " nowrap>closeBox</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bloc [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.destroyPopup"></a>destroyPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroyPopup: function()</td></tr></table></blockquote><p>Destroys the popup created via createPopup.</p><p>As with the marker, if user overrides the createPopup() function, s/he should also be able to override the destruction</p></div></div></div>
 
@@ -53,15 +53,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([4, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([4, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of OpenLayers.Marker are a combination of a OpenLayers.LonLat and an OpenLayers.Icon.</div></div><div class=CToolTip id="tt3"><div class=CClass>A popup is a small div that can opened and closed on the map. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 c [...]
+<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of OpenLayers.Marker are a combination of a OpenLayers.LonLat and an OpenLayers.Icon.</div></div><div class=CToolTip id="tt3"><div class=CConstructor>Base class used to construct all other classes. </div></div><div class=CToolTip id="tt4"><div class=CClass>A popup is a small div that can opened and closed on the map. </div> [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Feature/Vector-js.html b/doc/devdocs/files/OpenLayers/Feature/Vector-js.html
index 1728663..a439db1 100644
--- a/doc/devdocs/files/OpenLayers/Feature/Vector-js.html
+++ b/doc/devdocs/files/OpenLayers/Feature/Vector-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Feature.Vector - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -69,7 +69,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Vector.Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Vector.OpenLayers.Feature.Vector.style"></a>OpenLayers.<wbr>Feature.<wbr>Vector.<wbr>style</h3><div class=CBody><p>OpenLayers features can have a number of style attributes.  The ‘default’ style will typically be used if no other style is specified.  These styles correspond for the most part, to the styling properties defined by the SVG standard.  Information on fill propertie [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.Vector.OpenLayers.Feature.Vector.style"></a>OpenLayers.<wbr>Feature.<wbr>Vector.<wbr>style</h3><div class=CBody><p>OpenLayers features can have a number of style attributes.  The ‘default’ style will typically be used if no other style is specified.  These styles correspond for the most part, to the styling properties defined by the SVG standard.  Information on fill propertie [...]
 
 </div><!--Content-->
 
@@ -77,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([4, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([4, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Filter-js.html b/doc/devdocs/files/OpenLayers/Filter-js.html
index a477298..fe5cb2f 100644
--- a/doc/devdocs/files/OpenLayers/Filter-js.html
+++ b/doc/devdocs/files/OpenLayers/Filter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Filter/Comparison-js.html b/doc/devdocs/files/OpenLayers/Filter/Comparison-js.html
index bf289ad..ac975dc 100644
--- a/doc/devdocs/files/OpenLayers/Filter/Comparison-js.html
+++ b/doc/devdocs/files/OpenLayers/Filter/Comparison-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Comparison - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -15,7 +15,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.type"></a>type</h3><div class=CBody><p>{String} type: type of the comparison.  This is one of</p><ul><li>OpenLayers.Filter.Comparison.EQUAL_TO                 = “==”;</li><li>OpenLayers.Filter.Comparison.NOT_EQUAL_TO             = “!=”;</li><li>OpenLayers.Filter.Comparison.LESS_THAN                = “<”;</li><li>OpenLayers.Filter.Comparison.GREATER_T [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.type"></a>type</h3><div class=CBody><p>{String} type: type of the comparison.  This is one of</p><ul><li>OpenLayers.Filter.Comparison.EQUAL_TO                 = “==”;</li><li>OpenLayers.Filter.Comparison.NOT_EQUAL_TO             = “!=”;</li><li>OpenLayers.Filter.Comparison.LESS_THAN                = “<”;</li><li>OpenLayers.Filter.Comparison.GREATER_T [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Filter.Comparison.property"></a>property</h3><div class=CBody><p>{String} name of the context property to compare</p></div></div></div>
 
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Filter/FeatureId-js.html b/doc/devdocs/files/OpenLayers/Filter/FeatureId-js.html
index d84140f..d1dde2d 100644
--- a/doc/devdocs/files/OpenLayers/Filter/FeatureId-js.html
+++ b/doc/devdocs/files/OpenLayers/Filter/FeatureId-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.FeatureId - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Filter/Function-js.html b/doc/devdocs/files/OpenLayers/Filter/Function-js.html
index 93b9476..f3f00c5 100644
--- a/doc/devdocs/files/OpenLayers/Filter/Function-js.html
+++ b/doc/devdocs/files/OpenLayers/Filter/Function-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Function - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Filter/Logical-js.html b/doc/devdocs/files/OpenLayers/Filter/Logical-js.html
index 09f9b55..2fc1f54 100644
--- a/doc/devdocs/files/OpenLayers/Filter/Logical-js.html
+++ b/doc/devdocs/files/OpenLayers/Filter/Logical-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Logical - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Filter/Spatial-js.html b/doc/devdocs/files/OpenLayers/Filter/Spatial-js.html
index b4b475d..2f23b1a 100644
--- a/doc/devdocs/files/OpenLayers/Filter/Spatial-js.html
+++ b/doc/devdocs/files/OpenLayers/Filter/Spatial-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Filter.Spatial - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([5, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([5, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format-js.html b/doc/devdocs/files/OpenLayers/Format-js.html
index 6343896..00dfe75 100644
--- a/doc/devdocs/files/OpenLayers/Format-js.html
+++ b/doc/devdocs/files/OpenLayers/Format-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/ArcXML-js.html b/doc/devdocs/files/OpenLayers/Format/ArcXML-js.html
index 4a4bee6..cbcbbcb 100644
--- a/doc/devdocs/files/OpenLayers/Format/ArcXML-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/ArcXML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.ArcXML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML"></a>OpenLayers.<wbr>Format.<wbr>ArcXML</h1><div class=CBody><p>Read/Wite ArcXML.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.OpenLayers.Format.ArcXML" class=LConstructor id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">OpenLayers.Format.ArcXML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML"></a>OpenLayers.<wbr>Format.<wbr>ArcXML</h1><div class=CBody><p>Read/Write ArcXML.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.OpenLayers.Format.ArcXML" class=LConstructor id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">OpenLayers.Format.ArcXML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><l [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Properties"></a>Properties</h3></div></div>
 
@@ -31,9 +31,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.addLayers"></a>addLayers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addLayers: function(</td><td class="PParameter  prettyprint " nowrap>ll,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>lyrs</td><td class="PAfterParameter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.addImageSize"></a>addImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addImageSize: function(</td><td class="PParameter  prettyprint " nowrap>imsize,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>olsize</td><td class=" [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.addImageSize"></a>addImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addImageSize: function(</td><td class="PParameter  prettyprint " nowrap>imsize,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>olsize</td><td class=" [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.addCoordSys"></a>addCoordSys</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addCoordSys: function(</td><td class="PParameter  prettyprint " nowrap>featOrFilt,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>fsys</td><td class="P [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.addCoordSys"></a>addCoordSys</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addCoordSys: function(</td><td class="PParameter  prettyprint " nowrap>featOrFilt,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>fsys</td><td class="P [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.iserror"></a>iserror</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>iserror: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
 
@@ -45,7 +45,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.parseAttributes"></a>parseAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseAttributes: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>type</td><td cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.parsePointGeometry"></a>parsePointGeometry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parsePointGeometry: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.parsePointGeometry"></a>parsePointGeometry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parsePointGeometry: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
 
 </div><!--Content-->
 
@@ -53,15 +53,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseEnvelope: function(</td><td class="PParameter  prettyprint " nowrap>env,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>arr</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse an ar [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseEnvelope: function(</td><td class="PParameter  prettyprint " nowrap>env,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>arr</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse an ar [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/ArcXML/Features-js.html b/doc/devdocs/files/OpenLayers/Format/ArcXML/Features-js.html
index 801c824..5d1dad5 100644
--- a/doc/devdocs/files/OpenLayers/Format/ArcXML/Features-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/ArcXML/Features-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.ArcXML.Features - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnL [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML.Features"></a>OpenLayers.<wbr>Format.<wbr>ArcXML.<wbr>Features</h1><div class=CBody><p>Read/Wite ArcXML features.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.Features.OpenLayers.Format.ArcXML.Features" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.ArcXML.Features</a> const [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.ArcXML.Features"></a>OpenLayers.<wbr>Format.<wbr>ArcXML.<wbr>Features</h1><div class=CBody><p>Read/Write ArcXML features.  Create a new instance with the <a href="#OpenLayers.Format.ArcXML.Features.OpenLayers.Format.ArcXML.Features" class=LConstructor id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.ArcXML.Features</a> cons [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.Constructor"></a>Constructor</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.ArcXML.Features.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
 
 </div><!--Content-->
 
@@ -27,15 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string of ArcXML, and return a set of OpenLayers features.</div></div><di [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string of ArcXML, and return a set of OpenLayers features.</div></div><di [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/Atom-js.html b/doc/devdocs/files/OpenLayers/Format/Atom-js.html
index 8f0057a..65e1cf3 100644
--- a/doc/devdocs/files/OpenLayers/Format/Atom-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Atom-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Atom - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Atom"></a>OpenLayers.<wbr>Format.Atom</h1><div class=CBody><p>Read/write Atom feeds.  Create a new instance with the <OpenLayers.Format.AtomFeed> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STit [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Atom"></a>OpenLayers.<wbr>Format.Atom</h1><div class=CBody><p>Read/write Atom feeds.  Create a new instance with the <OpenLayers.Format.AtomFeed> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">OpenLayers.Format.XM [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.Properties"></a>Properties</h3></div></div>
 
@@ -31,25 +31,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Seri [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Seri [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.buildContentNode"></a>buildContentNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildContentNode: function(</td><td class="PParameter  prettyprint " nowrap>content</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.buildEntryNode"></a>buildEntryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildEntryNode: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.buildEntryNode"></a>buildEntryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildEntryNode: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.initGmlParser"></a>initGmlParser</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">initGmlParser: function()</td></tr></table></blockquote><p>Creates a GML parser.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.buildPersonConstructNode"></a>buildPersonConstructNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildPersonConstructNode: function(</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.getFirstChildValue"></a>getFirstChildValue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFirstChildValue: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>nsuri,</ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parseFeature"></a>parseFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeature: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parseFeature"></a>parseFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeature: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parseFeatures"></a>parseFeatures</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeatures: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parseFeatures"></a>parseFeatures</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeatures: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parseLocations"></a>parseLocations</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseLocations: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parseLocations"></a>parseLocations</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseLocations: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Atom.parsePersonConstruct"></a>parsePersonConstruct</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parsePersonConstructs: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>n [...]
 
@@ -59,15 +59,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Serialize or more feature nodes to Atom documents.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Serialize or more feature nodes to Atom documents.</div></div><div class=CToolTip id= [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/CQL-js.html b/doc/devdocs/files/OpenLayers/Format/CQL-js.html
index 4ce7ed8..f0d55c3 100644
--- a/doc/devdocs/files/OpenLayers/Format/CQL-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/CQL-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CQL - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/CSWGetDomain-js.html b/doc/devdocs/files/OpenLayers/Format/CSWGetDomain-js.html
index 9078664..c838484 100644
--- a/doc/devdocs/files/OpenLayers/Format/CSWGetDomain-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/CSWGetDomain-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetDomain - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html b/doc/devdocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html
index 9de8192..405da02 100644
--- a/doc/devdocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/CSWGetDomain/v2_0_2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetDomain.v2_0_2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="N [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetDomain.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetDomain.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetDomain v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetDomain.v2_0_2.OpenLayers.Format.CSWGetDomain.v2_0_2" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3') [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetDomain.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetDomain.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetDomain v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetDomain.v2_0_2.OpenLayers.Format.CSWGetDomain.v2_0_2" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3') [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.CSWGetDomain.v2_0_2.Properties"></a>Properties</h3></div></div>
 
@@ -47,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetDomain request.</div></div><div class=CToolTip id="tt2"><div  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetDomain request.</div></div><div class=CToolTip id="tt2"><div  [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/CSWGetRecords-js.html b/doc/devdocs/files/OpenLayers/Format/CSWGetRecords-js.html
index d6615dc..d60f457 100644
--- a/doc/devdocs/files/OpenLayers/Format/CSWGetRecords-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/CSWGetRecords-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetRecords - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html b/doc/devdocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html
index cd3250d..cda7619 100644
--- a/doc/devdocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.CSWGetRecords.v2_0_2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetRecords.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetRecords v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetRecords.v2_0_2.OpenLayers.Format.CSWGetRecords.v2_0_2" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip(' [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.CSWGetRecords.v2_0_2"></a>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</h1><div class=CBody><p>A format for creating CSWGetRecords v2.0.2 transactions.  Create a new instance with the <a href="#OpenLayers.Format.CSWGetRecords.v2_0_2.OpenLayers.Format.CSWGetRecords.v2_0_2" class=LConstructor id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip(' [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.CSWGetRecords.v2_0_2.Properties"></a>Properties</h3></div></div>
 
@@ -63,15 +63,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetRecords request.</div></div><div class=CToolTip id="tt2"><div [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse the response from a GetRecords request.</div></div><div class=CToolTip id="tt2"><div [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/Context-js.html b/doc/devdocs/files/OpenLayers/Format/Context-js.html
index 6675a7a..54a9f26 100644
--- a/doc/devdocs/files/OpenLayers/Format/Context-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Context-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Context - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/EncodedPolyline-js.html b/doc/devdocs/files/OpenLayers/Format/EncodedPolyline-js.html
new file mode 100644
index 0000000..ef45971
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Format/EncodedPolyline-js.html
@@ -0,0 +1,85 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.EncodedPolyline - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.EncodedPolyline"></a>OpenLayers.<wbr>Format.<wbr>EncodedPolyline</h1><div class=CBody><p>Class for reading and writing encoded polylines.   Create a new instance with the <a href="#OpenLayers.Format.EncodedPolyline.OpenLayers.Format.EncodedPolyline" class=LConstructor id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">OpenLayers.Format.Enc [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.geometryType"></a>geometryType</h3><div class=CBody><p>{String} Geometry type to output.  One of: linestring (default), linearring, point, multipoint or polygon.  If the geometryType is point, only the first point of the string is returned.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.OpenLayers.Format.EncodedPolyline"></a>OpenLayers.<wbr>Format.<wbr>EncodedPolyline</h3><div class=CBody><p>Create a new parser for encoded polylines</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance</ [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decode"></a>decode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decode: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dims,</td></tr><tr><td></td><t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockqu [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encode"></a>encode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encode: function (</td><td class="PParameter  prettyprint " nowrap>points,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dims,</td></tr><tr><td></td><t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeDeltas"></a>encodeDeltas</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeDeltas: function(</td><td class="PParameter  prettyprint " nowrap>numbers,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dimension,</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeDeltas"></a>decodeDeltas</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeDeltas: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dimension,</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeFloats"></a>encodeFloats</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeFloats: function(</td><td class="PParameter  prettyprint " nowrap>numbers,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeFloats"></a>decodeFloats</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeFloats: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeSignedIntegers"></a>encodeSignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeSignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>numbers</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeSignedIntegers"></a>decodeSignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeSignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeUnsignedIntegers"></a>encodeUnsignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeUnsignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>numbers</td><td class="PAfterParameters  prettyprint "now [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeUnsignedIntegers"></a>decodeUnsignedIntegers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeUnsignedIntegers: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "now [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeFloat"></a>encodeFloat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeFloat: function(</td><td class="PParameter  prettyprint " nowrap>num,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</td><td  [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeFloat"></a>decodeFloat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeFloat: function(</td><td class="PParameter  prettyprint " nowrap>encoded,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opt_factor</td> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeSignedInteger"></a>encodeSignedInteger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeSignedInteger: function(</td><td class="PParameter  prettyprint " nowrap>num</td><td class="PAfterParameters  prettyprint "nowrap>)</td></t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeSignedInteger"></a>decodeSignedInteger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeSignedInteger: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)</td [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.encodeUnsignedInteger"></a>encodeUnsignedInteger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeUnsignedInteger: function(</td><td class="PParameter  prettyprint " nowrap>num</td><td class="PAfterParameters  prettyprint "nowrap>)</ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.EncodedPolyline.decodeUnsignedInteger"></a>decodeUnsignedInteger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>decodeUnsignedInteger: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>encoded</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Deserialize an encoded polyline string and return a vector feature.</div></div><div cla [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Format/Filter-js.html b/doc/devdocs/files/OpenLayers/Format/Filter-js.html
index cce01a1..b3ac432 100644
--- a/doc/devdocs/files/OpenLayers/Format/Filter-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Filter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter"></a>OpenLayers.<wbr>Format.<wbr>Filter</h1><div class=CBody><p>Read/Wite ogc:Filter.  Create a new instance with the <a href="#OpenLayers.Format.Filter" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.Filter</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.h [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter"></a>OpenLayers.<wbr>Format.<wbr>Filter</h1><div class=CBody><p>Read/Write ogc:Filter.  Create a new instance with the <a href="#OpenLayers.Format.Filter" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.Filter</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js. [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.Properties"></a>Properties</h3></div></div>
 
@@ -29,15 +29,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite ogc:Filter. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><div class=CToolTip id="tt3"><div class=CClass>This class represents an OGC Filter.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read/Write ogc:Filter. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><div class=CToolTip id="tt3"><div class=CClass>This class represents an OGC Filter.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/Filter/v1-js.html b/doc/devdocs/files/OpenLayers/Format/Filter/v1-js.html
index 83477d7..b5efbed 100644
--- a/doc/devdocs/files/OpenLayers/Format/Filter/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Filter/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h1><div class=CBody><p>Superclass for Filter version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border= [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h1><div class=CBody><p>Superclass for Filter version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.Properties"></a>Properties</h3></div></div>
 
@@ -23,21 +23,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../Filter-js.html#OpenLayers.Format.Filter" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Format.Filter</a> constructor instead.</p><h4 class=CHeading>Parameters</h4 [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.OpenLayers.Format.Filter.v1"></a>OpenLayers.<wbr>Format.<wbr>Filter.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../Filter-js.html#OpenLayers.Format.Filter" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">OpenLayers.Format.Filter</a> constructor instead.</p><h4 class=CHeading>Parameters</h4 [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.readSpatial"></a>readSpatial</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>readSpatial: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.readSpatial"></a>readSpatial</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>readSpatial: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.writeOgcExpression"></a>writeOgcExpression</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeOgcExpression: function(</td><td class="PParameter  prettyprint " nowrap>value,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>no [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.encodeLiteral"></a>encodeLiteral</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>encodeLiteral: function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>filter</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.writeOgcExpression"></a>writeOgcExpression</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeOgcExpression: function(</td><td class="PParameter  prettyprint " nowrap>value,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>no [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.writeFeatureIdNodes"></a>writeFeatureIdNodes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeFeatureIdNodes: function(</td><td class="PParameter  prettyprint " nowrap>filter,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowra [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>filter</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4  [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.Filter.v1.writers"></a>writers</h3><div class=CBody><p>As a compliment to the readers property, this structure contains public writing functions grouped by namespace alias and named like the node names they produce.</p></div></div></div>
 
@@ -51,15 +51,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0  [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/Filter/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/Filter/v1_0_0-js.html
index 71028c1..4bfd2ab 100644
--- a/doc/devdocs/files/OpenLayers/Format/Filter/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Filter/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,15 +41,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeSpatial: function(</td><td class="PParameter  prettyprint " nowrap>filter,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read a { [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeSpatial: function(</td><td class="PParameter  prettyprint " nowrap>filter,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read a { [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/Filter/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/Filter/v1_1_0-js.html
index 80f465c..21729d0 100644
--- a/doc/devdocs/files/OpenLayers/Format/Filter/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Filter/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Filter.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,15 +41,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([6, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([6, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeSpatial: function(</td><td class="PParameter  prettyprint " nowrap>filter,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read a { [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeSpatial: function(</td><td class="PParameter  prettyprint " nowrap>filter,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read a { [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GML-js.html b/doc/devdocs/files/OpenLayers/Format/GML-js.html
index 909bec5..8422f6d 100644
--- a/doc/devdocs/files/OpenLayers/Format/GML-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML"></a>OpenLayers.<wbr>Format.GML</h1><div class=CBody><p>Read/Wite GML.  Create a new instance with the <a href="#OpenLayers.Format.GML.OpenLayers.Format.GML" class=LConstructor id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Format.GML</a> constructor.   Supports the GML simple features profile.</p><h4 class=CHeading>Inh [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML"></a>OpenLayers.<wbr>Format.GML</h1><div class=CBody><p>Read/Write GML.  Create a new instance with the <a href="#OpenLayers.Format.GML.OpenLayers.Format.GML" class=LConstructor id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Format.GML</a> constructor.   Supports the GML simple features profile.</p><h4 class=CHeading>In [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Properties"></a>Properties</h3></div></div>
 
@@ -39,53 +39,53 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseFeature"></a>parseFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeature: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry"></a>parseGeometry</h3><div class=CBody><p>Properties of this object are the functions that parse geometries based on their type.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.point"></a>parseGeometry.<wbr>point</h3><div class=CBody><p>Given a GML node representing a point geometry, create an OpenLayers point geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a hre [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.point"></a>parseGeometry.<wbr>point</h3><div class=CBody><p>Given a GML node representing a point geometry, create an OpenLayers point geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a hre [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.multipoint"></a>parseGeometry.<wbr>multipoint</h3><div class=CBody><p>Given a GML node representing a multipoint geometry, create an OpenLayers multipoint geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Re [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.multipoint"></a>parseGeometry.<wbr>multipoint</h3><div class=CBody><p>Given a GML node representing a multipoint geometry, create an OpenLayers multipoint geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Re [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.linestring"></a>parseGeometry.<wbr>linestring</h3><div class=CBody><p>Given a GML node representing a linestring geometry, create an OpenLayers linestring geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Re [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.linestring"></a>parseGeometry.<wbr>linestring</h3><div class=CBody><p>Given a GML node representing a linestring geometry, create an OpenLayers linestring geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Re [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.multilinestring"></a>parseGeometry.<wbr>multilinestring</h3><div class=CBody><p>Given a GML node representing a multilinestring geometry, create an OpenLayers multilinestring geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.multilinestring"></a>parseGeometry.<wbr>multilinestring</h3><div class=CBody><p>Given a GML node representing a multilinestring geometry, create an OpenLayers multilinestring geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.polygon"></a>parseGeometry.<wbr>polygon</h3><div class=CBody><p>Given a GML node representing a polygon geometry, create an OpenLayers polygon geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Returns</h4><p [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.polygon"></a>parseGeometry.<wbr>polygon</h3><div class=CBody><p>Given a GML node representing a polygon geometry, create an OpenLayers polygon geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Returns</h4><p [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.multipolygon"></a>parseGeometry.<wbr>multipolygon</h3><div class=CBody><p>Given a GML node representing a multipolygon geometry, create an OpenLayers multipolygon geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHe [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.multipolygon"></a>parseGeometry.<wbr>multipolygon</h3><div class=CBody><p>Given a GML node representing a multipolygon geometry, create an OpenLayers multipolygon geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHe [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.box"></a>parseGeometry.box</h3><div class=CBody><p>Given a GML node representing a box geometry, create an OpenLayers.Bounds.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bou [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseGeometry.box"></a>parseGeometry.box</h3><div class=CBody><p>Given a GML node representing a box geometry, create an OpenLayers.Bounds.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A GML node.</td></tr></table><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bou [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.parseAttributes"></a>parseAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseAttributes: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Gener [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Gener [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.createFeatureXML"></a>createFeatureXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureXML: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.createFeatureXML"></a>createFeatureXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureXML: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry"></a>buildGeometry</h3><div class=CBody><p>Object containing methods to do the actual geometry node building based on geometry type.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.point"></a>buildGeometry.<wbr>point</h3><div class=CBody><p>Given an OpenLayers point geometry, create a GML point.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link19 onMouseOver="ShowTip(e [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.point"></a>buildGeometry.<wbr>point</h3><div class=CBody><p>Given an OpenLayers point geometry, create a GML point.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link20 onMouseOver="ShowTip(e [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.multipoint"></a>buildGeometry.<wbr>multipoint</h3><div class=CBody><p>Given an OpenLayers multipoint geometry, create a GML multipoint.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/MultiPoint-js.html#OpenLayers.Geometry.MultiPoint" class=LClass id [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.multipoint"></a>buildGeometry.<wbr>multipoint</h3><div class=CBody><p>Given an OpenLayers multipoint geometry, create a GML multipoint.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/MultiPoint-js.html#OpenLayers.Geometry.MultiPoint" class=LClass id [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.linestring"></a>buildGeometry.<wbr>linestring</h3><div class=CBody><p>Given an OpenLayers linestring geometry, create a GML linestring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LineString-js.html#OpenLayers.Geometry.LineString" class=LClass id [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.linestring"></a>buildGeometry.<wbr>linestring</h3><div class=CBody><p>Given an OpenLayers linestring geometry, create a GML linestring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LineString-js.html#OpenLayers.Geometry.LineString" class=LClass id [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.multilinestring"></a>buildGeometry.<wbr>multilinestring</h3><div class=CBody><p>Given an OpenLayers multilinestring geometry, create a GML multilinestring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/MultiLineString-js.html#OpenLayers.Geometry.Mu [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.multilinestring"></a>buildGeometry.<wbr>multilinestring</h3><div class=CBody><p>Given an OpenLayers multilinestring geometry, create a GML multilinestring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/MultiLineString-js.html#OpenLayers.Geometry.Mu [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.linearring"></a>buildGeometry.<wbr>linearring</h3><div class=CBody><p>Given an OpenLayers linearring geometry, create a GML linearring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LinearRing-js.html#OpenLayers.Geometry.LinearRing" class=LClass id [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.linearring"></a>buildGeometry.<wbr>linearring</h3><div class=CBody><p>Given an OpenLayers linearring geometry, create a GML linearring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LinearRing-js.html#OpenLayers.Geometry.LinearRing" class=LClass id [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.polygon"></a>buildGeometry.<wbr>polygon</h3><div class=CBody><p>Given an OpenLayers polygon geometry, create a GML polygon.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link24 onMouseOve [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.polygon"></a>buildGeometry.<wbr>polygon</h3><div class=CBody><p>Given an OpenLayers polygon geometry, create a GML polygon.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link25 onMouseOve [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.multipolygon"></a>buildGeometry.<wbr>multipolygon</h3><div class=CBody><p>Given an OpenLayers multipolygon geometry, create a GML multipolygon.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/MultiPolygon-js.html#OpenLayers.Geometry.MultiPolygon" cla [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.multipolygon"></a>buildGeometry.<wbr>multipolygon</h3><div class=CBody><p>Given an OpenLayers multipolygon geometry, create a GML multipolygon.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/MultiPolygon-js.html#OpenLayers.Geometry.MultiPolygon" cla [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildGeometry.bounds"></a>buildGeometry.<wbr>bounds</h3><div class=CBody><p>Given an OpenLayers bounds, create a GML box.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>bounds</td><td class=CDLDescription>{<OpenLayers.Geometry.Bounds>} A bounds object.</td></tr></table><h4 class=CHeading>Returns</h4><p>{DOMElement}  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildCoordinates"></a>buildCoordinates</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinatesNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.buildCoordinates"></a>buildCoordinates</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinatesNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
 </div><!--Content-->
 
@@ -93,15 +93,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string, and return a list of features.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read data from a string, and return a list of features.</div></div><div class=CToolTip id= [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GML/Base-js.html b/doc/devdocs/files/OpenLayers/Format/GML/Base-js.html
index 2d49312..4f1d772 100644
--- a/doc/devdocs/files/OpenLayers/Format/GML/Base-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GML/Base-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML.Base - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();p [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h1><div class=CBody><p>Superclass for GML parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h1><div class=CBody><p>Superclass for GML parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt8', 'link9')" onMouseOut="HideTip('tt8')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.Properties"></a>Properties</h3></div></div>
 
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.featureNS"></a>featureNS</h3><div class=CBody><p>{String} The feature namespace.   Must be set in the options at construction.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.geometry"></a>geometry</h3><div class=CBody><p>{String} Name of geometry element.   Defaults to “geometry”.  If null, it will be set on <a href="#OpenLayers.Format.GML.Base.read" class=LFunction id=link9 onMouseOver="ShowTip(event, 'tt3', 'link9')" onMouseOut="HideTip('tt3')">read</a> when the first geometry is parsed.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.geometry"></a>geometry</h3><div class=CBody><p>{String} Name of geometry element.   Defaults to “geometry”.  If null, it will be set on <a href="#OpenLayers.Format.GML.Base.read" class=LFunction id=link10 onMouseOver="ShowTip(event, 'tt3', 'link10')" onMouseOut="HideTip('tt3')">read</a> when the first geometry is parsed.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.extractAttributes"></a>extractAttributes</h3><div class=CBody><p>{Boolean} Extract attributes from GML.   Default is true.</p></div></div></div>
 
@@ -33,31 +33,31 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.xy"></a>xy</h3><div class=CBody><p>{Boolean} Order of the GML coordinate true:(x,y) or false:(y,x) Changing is not recommended, a new Format should be instantiated.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.geometryTypes"></a>geometryTypes</h3><div class=CBody><p>{Object} Maps OpenLayers geometry class names to GML element names.  Use <a href="#OpenLayers.Format.GML.Base.setGeometryTypes" class=LFunction id=link10 onMouseOver="ShowTip(event, 'tt6', 'link10')" onMouseOut="HideTip('tt6')">setGeometryTypes</a> before accessing this property.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.geometryTypes"></a>geometryTypes</h3><div class=CBody><p>{Object} Maps OpenLayers geometry class names to GML element names.  Use <a href="#OpenLayers.Format.GML.Base.setGeometryTypes" class=LFunction id=link11 onMouseOver="ShowTip(event, 'tt6', 'link11')" onMouseOut="HideTip('tt6')">setGeometryTypes</a> before accessing this property.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.singleFeatureType"></a>singleFeatureType</h3><div class=CBody><p>{Boolean} True if there is only 1 featureType, and not an array of featuretypes.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.autoConfig"></a>autoConfig</h3><div class=CBody><p>{Boolean} Indicates if the format was configured without a <a href="#OpenLayers.Format.GML.Base.featureNS" class=LProperty id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">featureNS</a>, but auto-configured <a href="#OpenLayers.Format.GML.Base.featureNS" class=LProperty id=link12 onMouseOver="ShowTip(event, 'tt [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.autoConfig"></a>autoConfig</h3><div class=CBody><p>{Boolean} Indicates if the format was configured without a <a href="#OpenLayers.Format.GML.Base.featureNS" class=LProperty id=link12 onMouseOver="ShowTip(event, 'tt1', 'link12')" onMouseOut="HideTip('tt1')">featureNS</a>, but auto-configured <a href="#OpenLayers.Format.GML.Base.featureNS" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.regExes"></a>regExes</h3><div class=CBody><p>Compiled regular expressions for manipulating strings.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v2-js.html#OpenLayers.Format.GML.v2" class=LClass id=link16 onMouseOver="ShowTip(event, 'tt8', 'link16')" onMouseOut="HideTip('tt8')">OpenLayers.Format.GML.v2</a> or <a href="v3-js.html#OpenLayers.Format.GML.v3" class=LClass id= [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.OpenLayers.Format.GML.Base"></a>OpenLayers.<wbr>Format.<wbr>GML.Base</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v2-js.html#OpenLayers.Format.GML.v2" class=LClass id=link17 onMouseOver="ShowTip(event, 'tt9', 'link17')" onMouseOut="HideTip('tt9')">OpenLayers.Format.GML.v2</a> or <a href="v3-js.html#OpenLayers.Format.GML.v3" class=LClass id= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class= [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.readNode"></a>readNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>readNode: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td cla [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.writers"></a>writers</h3><div class=CBody><p>As a compliment to the readers property, this structure contains public writing functions grouped by namespace alias and named like the node names they produce.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.setGeometryTypes"></a>setGeometryTypes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">setGeometryTypes: function()</td></tr></table></blockquote><p>Sets the <a href="#OpenLayers.Format.GML.Base.geometryTypes" class=LProperty id=link20 onMouseOver="ShowTip(event, 'tt7', 'link20')" onMouseOut="HideTip('tt7')">geometryTypes [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GML.Base.setGeometryTypes"></a>setGeometryTypes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">setGeometryTypes: function()</td></tr></table></blockquote><p>Sets the <a href="#OpenLayers.Format.GML.Base.geometryTypes" class=LProperty id=link21 onMouseOver="ShowTip(event, 'tt7', 'link21')" onMouseOut="HideTip('tt7')">geometryTypes [...]
 
 </div><!--Content-->
 
@@ -65,15 +65,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty>{String} The feature namespace. </div></div><div class=CToolTip id="tt2"><div class=CProperty>{Array(String) or String} The local (without prefix) feature typeName(s).</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PP [...]
+<div class=CToolTip id="tt1"><div class=CProperty>{String} The feature namespace. </div></div><div class=CToolTip id="tt2"><div class=CProperty>{Array(String) or String} The local (without prefix) feature typeName(s).</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PP [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GML/v2-js.html b/doc/devdocs/files/OpenLayers/Format/GML/v2-js.html
index 375dca4..2279a11 100644
--- a/doc/devdocs/files/OpenLayers/Format/GML/v2-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GML/v2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML.v2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GML/v3-js.html b/doc/devdocs/files/OpenLayers/Format/GML/v3-js.html
index 39f2e64..56b66b0 100644
--- a/doc/devdocs/files/OpenLayers/Format/GML/v3-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GML/v3-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GML.v3 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([7, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([7, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GPX-js.html b/doc/devdocs/files/OpenLayers/Format/GPX-js.html
index 9c17d13..74e1195 100644
--- a/doc/devdocs/files/OpenLayers/Format/GPX-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GPX-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GPX - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GPX"></a>OpenLayers.<wbr>Format.GPX</h1><div class=CBody><p>Read/write GPX parser.  Create a new instance with the <a href="#OpenLayers.Format.GPX.OpenLayers.Format.GPX" class=LConstructor id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">OpenLayers.Format.GPX</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../.. [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GPX"></a>OpenLayers.<wbr>Format.GPX</h1><div class=CBody><p>Read/write GPX parser.  Create a new instance with the <a href="#OpenLayers.Format.GPX.OpenLayers.Format.GPX" class=LConstructor id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">OpenLayers.Format.GPX</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-j [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.Properties"></a>Properties</h3></div></div>
 
@@ -37,25 +37,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a list [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a list [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.extractSegment"></a>extractSegment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extractSegment: function(</td><td class="PParameter  prettyprint " nowrap>segment,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>segmentType</td><t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.extractSegment"></a>extractSegment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extractSegment: function(</td><td class="PParameter  prettyprint " nowrap>segment,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>segmentType</td><t [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.parseAttributes"></a>parseAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseAttributes: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>metadata</td><td class="PAfterParameters  pr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>metadata</td><td class="PAfterParameters  pr [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildMetadataNode"></a>buildMetadataNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildMetadataNode: function(</td><td class="PParameter  prettyprint " nowrap>metadata</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildFeatureNode"></a>buildFeatureNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildFeatureNode: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildFeatureNode"></a>buildFeatureNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildFeatureNode: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildTrkSegNode"></a>buildTrkSegNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildTrkSegNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildTrkSegNode"></a>buildTrkSegNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildTrkSegNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildTrkPtNode"></a>buildTrkPtNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildTrkPtNode: function(</td><td class="PParameter  prettyprint " nowrap>point</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildTrkPtNode"></a>buildTrkPtNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildTrkPtNode: function(</td><td class="PParameter  prettyprint " nowrap>point</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildWptNode"></a>buildWptNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildWptNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.buildWptNode"></a>buildWptNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildWptNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.appendAttributesNode"></a>appendAttributesNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>appendAttributesNode: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>fea [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GPX.appendAttributesNode"></a>appendAttributesNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>appendAttributesNode: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>fea [...]
 
 </div><!--Content-->
 
@@ -63,15 +63,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a list of features from a GPX doc</div></div><div class=CToolTip id="tt2"><div class [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a list of features from a GPX doc</div></div><div class=CToolTip id="tt2"><div class [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GeoJSON-js.html b/doc/devdocs/files/OpenLayers/Format/GeoJSON-js.html
index 9818a8b..ca37fb1 100644
--- a/doc/devdocs/files/OpenLayers/Format/GeoJSON-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GeoJSON-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GeoJSON - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -85,10 +85,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/GeoRSS-js.html b/doc/devdocs/files/OpenLayers/Format/GeoRSS-js.html
index 3ad8212..bd932ac 100644
--- a/doc/devdocs/files/OpenLayers/Format/GeoRSS-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/GeoRSS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.GeoRSS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GeoRSS"></a>OpenLayers.<wbr>Format.<wbr>GeoRSS</h1><div class=CBody><p>Read/write GeoRSS parser.  Create a new instance with the <a href="#OpenLayers.Format.GeoRSS.OpenLayers.Format.GeoRSS" class=LConstructor id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">OpenLayers.Format.GeoRSS</a> constructor.</p><h4 class=CHeading>Inherits from</h4 [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.GeoRSS"></a>OpenLayers.<wbr>Format.<wbr>GeoRSS</h1><div class=CBody><p>Read/write GeoRSS parser.  Create a new instance with the <a href="#OpenLayers.Format.GeoRSS.OpenLayers.Format.GeoRSS" class=LConstructor id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">OpenLayers.Format.GeoRSS</a> constructor.</p><h4 class=CHeading>Inherits from</h4 [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.Properties"></a>Properties</h3></div></div>
 
@@ -37,21 +37,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.createGeometryFromItem"></a>createGeometryFromItem</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createGeometryFromItem: function(</td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.createGeometryFromItem"></a>createGeometryFromItem</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createGeometryFromItem: function(</td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.createFeatureFromItem"></a>createFeatureFromItem</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureFromItem: function(</td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.createFeatureFromItem"></a>createFeatureFromItem</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureFromItem: function(</td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS._getChildValue"></a>_getChildValue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>_getChildValue: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>nsuri,</td></tr><t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a l [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Return a l [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Ac [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Ac [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.createFeatureXML"></a>createFeatureXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureXML: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.createFeatureXML"></a>createFeatureXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureXML: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.buildCoordinatesNode"></a>buildCoordinatesNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinatesNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.GeoRSS.buildCoordinatesNode"></a>buildCoordinatesNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinatesNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
 
 </div><!--Content-->
 
@@ -59,15 +59,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createGeometryFromItem: function(</td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a geometry from a GeoRSS Item.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createGeometryFromItem: function(</td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return a geometry from a GeoRSS Item.</div></div><div class=CToolTip id= [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/JSON-js.html b/doc/devdocs/files/OpenLayers/Format/JSON-js.html
index 537080f..e8bbfac 100644
--- a/doc/devdocs/files/OpenLayers/Format/JSON-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/JSON-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.JSON - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -67,10 +67,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/KML-js.html b/doc/devdocs/files/OpenLayers/Format/KML-js.html
index 9644bd4..d1ccd66 100644
--- a/doc/devdocs/files/OpenLayers/Format/KML-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/KML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.KML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.KML"></a>OpenLayers.<wbr>Format.KML</h1><div class=CBody><p>Read/Write KML.  Create a new instance with the <a href="#OpenLayers.Format.KML.OpenLayers.Format.KML" class=LConstructor id=link26 onMouseOver="ShowTip(event, 'tt24', 'link26')" onMouseOut="HideTip('tt24')">OpenLayers.Format.KML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprec [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.KML"></a>OpenLayers.<wbr>Format.KML</h1><div class=CBody><p>Read/Write KML.  Create a new instance with the <a href="#OpenLayers.Format.KML.OpenLayers.Format.KML" class=LConstructor id=link25 onMouseOver="ShowTip(event, 'tt24', 'link25')" onMouseOut="HideTip('tt24')">OpenLayers.Format.KML</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html# [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.Properties"></a>Properties</h3></div></div>
 
@@ -33,7 +33,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.extractTracks"></a>extractTracks</h3><div class=CBody><p>{Boolean} Extract gx:Track elements from Placemark elements.   Default is false.   If true, features will be generated for all points in all gx:Track elements.   Features will have a when (Date) attribute based on when elements in the track.   If tracks include angle elements, features will have heading, tilt, and roll attri [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.trackAttributes"></a>trackAttributes</h3><div class=CBody><p>{Array} If <a href="#OpenLayers.Format.KML.extractTracks" class=LProperty id=link27 onMouseOver="ShowTip(event, 'tt1', 'link27')" onMouseOut="HideTip('tt1')">extractTracks</a> is true, points within gx:Track elements will be parsed as features with when, heading, tilt, and roll attributes.  Any additional attribute names can be provide [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.trackAttributes"></a>trackAttributes</h3><div class=CBody><p>{Array} If <a href="#OpenLayers.Format.KML.extractTracks" class=LProperty id=link27 onMouseOver="ShowTip(event, 'tt1', 'link27')" onMouseOut="HideTip('tt1')">extractTracks</a> is true, points within gx:Track elements will be parsed as features with when, heading, tilt, and roll attributes.  Any additional attribute names can be provide [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.internalns"></a>internalns</h3><div class=CBody><p>{String} KML Namespace to use -- defaults to the namespace of the Placemark node being parsed, but falls back to kmlns.</p></div></div></div>
 
@@ -53,39 +53,39 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Read data fr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseData"></a>parseData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseData: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParamet [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseData"></a>parseData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseData: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParamet [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseLinks"></a>parseLinks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseLinks: function(</td><td class="PParameter  prettyprint " nowrap>nodes,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPar [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.fetchLink"></a>fetchLink</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>fetchLink: function(</td><td class="PParameter  prettyprint " nowrap>href</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseStyles"></a>parseStyles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseStyles: function(</td><td class="PParameter  prettyprint " nowrap>nodes,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseStyles"></a>parseStyles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseStyles: function(</td><td class="PParameter  prettyprint " nowrap>nodes,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfter [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseKmlColor"></a>parseKmlColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseKmlColor: function(</td><td class="PParameter  prettyprint " nowrap>kmlColor</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseStyle"></a>parseStyle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseStyle: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseStyleMaps"></a>parseStyleMaps</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseStyleMaps: function(</td><td class="PParameter  prettyprint " nowrap>nodes,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td clas [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseStyleMaps"></a>parseStyleMaps</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseStyleMaps: function(</td><td class="PParameter  prettyprint " nowrap>nodes,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td clas [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseFeatures"></a>parseFeatures</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeatures: function(</td><td class="PParameter  prettyprint " nowrap>nodes,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class=" [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseFeature"></a>parseFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeature: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseFeature"></a>parseFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseFeature: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.getStyle"></a>getStyle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getStyle: function(</td><td class="PParameter  prettyprint " nowrap>styleUrl,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParame [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry"></a>parseGeometry</h3><div class=CBody><p>Properties of this object are the functions that parse geometries based on their type.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.point"></a>parseGeometry.<wbr>point</h3><div class=CBody><p>Given a KML node representing a point geometry, create an OpenLayers point geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML Point node.</td></tr></table><h4 class=CHeading>Returns</h4><p>{ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.point"></a>parseGeometry.<wbr>point</h3><div class=CBody><p>Given a KML node representing a point geometry, create an OpenLayers point geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML Point node.</td></tr></table><h4 class=CHeading>Returns</h4><p>{ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.linestring"></a>parseGeometry.<wbr>linestring</h3><div class=CBody><p>Given a KML node representing a linestring geometry, create an OpenLayers linestring geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML LineString node.</td></tr></table><h4 class= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.linestring"></a>parseGeometry.<wbr>linestring</h3><div class=CBody><p>Given a KML node representing a linestring geometry, create an OpenLayers linestring geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML LineString node.</td></tr></table><h4 class= [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.polygon"></a>parseGeometry.<wbr>polygon</h3><div class=CBody><p>Given a KML node representing a polygon geometry, create an OpenLayers polygon geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML Polygon node.</td></tr></table><h4 class=CHeading>Return [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.polygon"></a>parseGeometry.<wbr>polygon</h3><div class=CBody><p>Given a KML node representing a polygon geometry, create an OpenLayers polygon geometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML Polygon node.</td></tr></table><h4 class=CHeading>Return [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.multigeometry"></a>parseGeometry.<wbr>multigeometry</h3><div class=CBody><p>Given a KML node representing a multigeometry, create an OpenLayers geometry collection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML MultiGeometry node.</td></tr></table><h4 cla [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseGeometry.multigeometry"></a>parseGeometry.<wbr>multigeometry</h3><div class=CBody><p>Given a KML node representing a multigeometry, create an OpenLayers geometry collection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>node</td><td class=CDLDescription>{DOMElement} A KML MultiGeometry node.</td></tr></table><h4 cla [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseAttributes"></a>parseAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseAttributes: function(</td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
 
@@ -93,35 +93,35 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.parseProperty"></a>parseProperty</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseProperty: function(</td><td class="PParameter  prettyprint " nowrap>xmlNode,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>namespace,</td></tr>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Accep [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Accep [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.createFolderXML"></a>createFolderXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createFolderXML: function()</td></tr></table></blockquote><p>Creates and returns a KML folder node</p><h4 class=CHeading>Returns</h4><p>{DOMElement}</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.createPlacemarkXML"></a>createPlacemarkXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createPlacemarkXML: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.createPlacemarkXML"></a>createPlacemarkXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createPlacemarkXML: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometryNode"></a>buildGeometryNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildGeometryNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry"></a>buildGeometry</h3><div class=CBody><p>Object containing methods to do the actual geometry node building based on geometry type.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.point"></a>buildGeometry.<wbr>point</h3><div class=CBody><p>Given an OpenLayers point geometry, create a KML point.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link43 onMouseOver="ShowTip(e [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.point"></a>buildGeometry.<wbr>point</h3><div class=CBody><p>Given an OpenLayers point geometry, create a KML point.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link42 onMouseOver="ShowTip(e [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.multipoint"></a>buildGeometry.<wbr>multipoint</h3><div class=CBody><p>Given an OpenLayers multipoint geometry, create a KML GeometryCollection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=l [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.multipoint"></a>buildGeometry.<wbr>multipoint</h3><div class=CBody><p>Given an OpenLayers multipoint geometry, create a KML GeometryCollection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=l [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.linestring"></a>buildGeometry.<wbr>linestring</h3><div class=CBody><p>Given an OpenLayers linestring geometry, create a KML linestring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LineString-js.html#OpenLayers.Geometry.LineString" class=LClass id [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.linestring"></a>buildGeometry.<wbr>linestring</h3><div class=CBody><p>Given an OpenLayers linestring geometry, create a KML linestring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LineString-js.html#OpenLayers.Geometry.LineString" class=LClass id [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.multilinestring"></a>buildGeometry.<wbr>multilinestring</h3><div class=CBody><p>Given an OpenLayers multilinestring geometry, create a KML GeometryCollection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" cl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.multilinestring"></a>buildGeometry.<wbr>multilinestring</h3><div class=CBody><p>Given an OpenLayers multilinestring geometry, create a KML GeometryCollection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.linearring"></a>buildGeometry.<wbr>linearring</h3><div class=CBody><p>Given an OpenLayers linearring geometry, create a KML linearring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LinearRing-js.html#OpenLayers.Geometry.LinearRing" class=LClass id [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.linearring"></a>buildGeometry.<wbr>linearring</h3><div class=CBody><p>Given an OpenLayers linearring geometry, create a KML linearring.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/LinearRing-js.html#OpenLayers.Geometry.LinearRing" class=LClass id [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.polygon"></a>buildGeometry.<wbr>polygon</h3><div class=CBody><p>Given an OpenLayers polygon geometry, create a KML polygon.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link48 onMouseOve [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.polygon"></a>buildGeometry.<wbr>polygon</h3><div class=CBody><p>Given an OpenLayers polygon geometry, create a KML polygon.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon" class=LClass id=link47 onMouseOve [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.multipolygon"></a>buildGeometry.<wbr>multipolygon</h3><div class=CBody><p>Given an OpenLayers multipolygon geometry, create a KML GeometryCollection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClas [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.multipolygon"></a>buildGeometry.<wbr>multipolygon</h3><div class=CBody><p>Given an OpenLayers multipolygon geometry, create a KML GeometryCollection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClas [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.collection"></a>buildGeometry.<wbr>collection</h3><div class=CBody><p>Given an OpenLayers geometry collection, create a KML MultiGeometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Collection-js.html#OpenLayers.Geometry.Collection" class=LClass [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildGeometry.collection"></a>buildGeometry.<wbr>collection</h3><div class=CBody><p>Given an OpenLayers geometry collection, create a KML MultiGeometry.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>geometry</td><td class=CDLDescription>{<a href="../Geometry/Collection-js.html#OpenLayers.Geometry.Collection" class=LClass [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildCoordinatesNode"></a>buildCoordinatesNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinatesNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildCoordinatesNode"></a>buildCoordinatesNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinatesNode: function(</td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildCoordinates"></a>buildCoordinates</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinates: function(</td><td class="PParameter  prettyprint " nowrap>point</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildCoordinates"></a>buildCoordinates</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildCoordinates: function(</td><td class="PParameter  prettyprint " nowrap>point</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.KML.buildExtendedData"></a>buildExtendedData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>buildExtendedData: function(</td><td class="PParameter  prettyprint " nowrap>attributes</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
 
@@ -131,15 +131,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty>{Boolean} Extract gx:Track elements from Placemark elements. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></tabl [...]
+<div class=CToolTip id="tt1"><div class=CProperty>{Boolean} Extract gx:Track elements from Placemark elements. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></tabl [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OGCExceptionReport-js.html b/doc/devdocs/files/OpenLayers/Format/OGCExceptionReport-js.html
index c625433..20d6b68 100644
--- a/doc/devdocs/files/OpenLayers/Format/OGCExceptionReport-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OGCExceptionReport-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OGCExceptionReport - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OGCExceptionReport"></a>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport</h1><div class=CBody><p>Class to read exception reports for various OGC services and versions.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>S [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OGCExceptionReport"></a>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport</h1><div class=CBody><p>Class to read exception reports for various OGC services and versions.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></l [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OGCExceptionReport.Properties"></a>Properties</h3></div></div>
 
@@ -39,15 +39,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read OGC exception report data from a string, and return an object with information about  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read OGC exception report data from a string, and return an object with information about  [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OSM-js.html b/doc/devdocs/files/OpenLayers/Format/OSM-js.html
index 8753227..3ea9954 100644
--- a/doc/devdocs/files/OpenLayers/Format/OSM-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OSM-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OSM - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OSM"></a>OpenLayers.<wbr>Format.OSM</h1><div class=CBody><p>OSM parser.  Create a new instance with the <a href="#OpenLayers.Format.OSM.OpenLayers.Format.OSM" class=LConstructor id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">OpenLayers.Format.OSM</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OSM"></a>OpenLayers.<wbr>Format.OSM</h1><div class=CBody><p>OSM parser.  Create a new instance with the <a href="#OpenLayers.Format.OSM.OpenLayers.Format.OSM" class=LConstructor id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">OpenLayers.Format.OSM</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#Open [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.Properties"></a>Properties</h3></div></div>
 
@@ -35,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.isWayArea"></a>isWayArea</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>isWayArea: function(</td><td class="PParameter  prettyprint " nowrap>way</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Takes [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Takes [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.createFeatureNodes"></a>createFeatureNodes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureNodes: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.createFeatureNodes"></a>createFeatureNodes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createFeatureNodes: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.createXML"></a>createXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createXML:</td></tr></table></blockquote><p>Takes a feature, returns a list of nodes from size 0->n.  Will include all pieces of the serialization that are required which have not already been created.</p><h4 class=CHeading>Parameters</h4><table b [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.createXML"></a>createXML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createXML:</td></tr></table></blockquote><p>Takes a feature, returns a list of nodes from size 0->n.  Will include all pieces of the serialization that are required which have not already been created.</p><h4 class=CHeading>Parameters</h4><table b [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.serializeTags"></a>serializeTags</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>serializeTags: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>node</td><td class="P [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.serializeTags"></a>serializeTags</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>serializeTags: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>node</td><td class="P [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.setState"></a>setState</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setState: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OSM.setState"></a>setState</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setState: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>node</td><td class="PAfterParameters [...]
 
 </div><!--Content-->
 
@@ -51,15 +51,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNodes: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return the node items from a doc.</div></div><div class=CToolTip id="tt2"><div class=CF [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNodes: function(</td><td class="PParameter  prettyprint " nowrap>doc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Return the node items from a doc.</div></div><div class=CToolTip id="tt2"><div class=CF [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OWSCommon-js.html b/doc/devdocs/files/OpenLayers/Format/OWSCommon-js.html
index b8f45a6..e632474 100644
--- a/doc/devdocs/files/OpenLayers/Format/OWSCommon-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OWSCommon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1-js.html b/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1-js.html
index ce5d797..eb5b1d6 100644
--- a/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSCommon.v1"></a>OpenLayers.<wbr>Format.<wbr>OWSCommon.v1</h1><div class=CBody><p>Common readers and writers for OWSCommon v1.X formats</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBo [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSCommon.v1"></a>OpenLayers.<wbr>Format.<wbr>OWSCommon.v1</h1><div class=CBody><p>Common readers and writers for OWSCommon v1.X formats</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMAR [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSCommon.v1.Properties_and_Functions"></a>Properties and Functions</h3></div></div>
 
@@ -29,15 +29,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><!- [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><di [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html
index 7c7f873..e405c4b 100644
--- a/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html
index 78a19d6..9a3e21e 100644
--- a/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OWSCommon/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSCommon.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([9, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([9, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OWSContext-js.html b/doc/devdocs/files/OpenLayers/Format/OWSContext-js.html
index 538c55e..39d1d01 100644
--- a/doc/devdocs/files/OpenLayers/Format/OWSContext-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OWSContext-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSContext - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html b/doc/devdocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html
index 262a14b..89a8663 100644
--- a/doc/devdocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/OWSContext/v0_3_1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.OWSContext.v0_3_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDO [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h1><div class=CBody><p>Read and write OWSContext version 0.3.1.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=S [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h1><div class=CBody><p>Read and write OWSContext version 0.3.1.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMM [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.Properties"></a>Properties</h3></div></div>
 
@@ -43,7 +43,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../OWSContext-js.html#OpenLayers.Format.OWSContext" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Format.OWSContext</a> constructor inst [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1"></a>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../OWSContext-js.html#OpenLayers.Format.OWSContext" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">OpenLayers.Format.OWSContext</a> constructor inst [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.OWSContext.v0_3_1.Functions"></a>Functions</h3></div></div>
 
@@ -69,15 +69,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setNestingPath : function(</td><td class="PParameter  prettyprint " nowrap>l</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Set the nestingPath property of the layer depending on the position of the layer i [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setNestingPath : function(</td><td class="PParameter  prettyprint " nowrap>l</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Set the nestingPath property of the layer depending on the position of the layer i [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/QueryStringFilter-js.html b/doc/devdocs/files/OpenLayers/Format/QueryStringFilter-js.html
index 91defee..834c084 100644
--- a/doc/devdocs/files/OpenLayers/Format/QueryStringFilter-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/QueryStringFilter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.QueryStringFilter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SLD-js.html b/doc/devdocs/files/OpenLayers/Format/SLD-js.html
index 73c6387..6b3bb84 100644
--- a/doc/devdocs/files/OpenLayers/Format/SLD-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SLD-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SLD"></a>OpenLayers.<wbr>Format.SLD</h1><div class=CBody><p>Read/Wite SLD.  Create a new instance with the <a href="#OpenLayers.Format.SLD" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.SLD</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XM [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SLD"></a>OpenLayers.<wbr>Format.SLD</h1><div class=CBody><p>Read/Write SLD.  Create a new instance with the <a href="#OpenLayers.Format.SLD" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.SLD</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.X [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SLD.Properties"></a>Properties</h3></div></div>
 
@@ -35,15 +35,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite SLD. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Read/Write SLD. </div></div><div class=CToolTip id="tt2"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SLD/v1-js.html b/doc/devdocs/files/OpenLayers/Format/SLD/v1-js.html
index 16bdbd2..f9e9616 100644
--- a/doc/devdocs/files/OpenLayers/Format/SLD/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SLD/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,15 +57,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><di [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><di [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0-js.html
index aa10886..0c119f9 100644
--- a/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Superclass for SLD version 1 parsers.</div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Wite SLD. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Superclass for SLD version 1 parsers.</div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Write SLD. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html b/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html
index 0988ac0..85d67a9 100644
--- a/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SLD/v1_0_0_GeoServer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SLD/v1_0_0_GeoServer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([8, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([8, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SOSCapabilities-js.html b/doc/devdocs/files/OpenLayers/Format/SOSCapabilities-js.html
index 7ffd0c4..a1b43a3 100644
--- a/doc/devdocs/files/OpenLayers/Format/SOSCapabilities-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SOSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html
index 06402e3..90e621c 100644
--- a/doc/devdocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SOSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSCapabilities.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html b/doc/devdocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html
index d99a157..ed9ed33 100644
--- a/doc/devdocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SOSGetFeatureOfInterest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSGetFeatureOfInterest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest"></a>OpenLayers.<wbr>Format.<wbr>SOSGetFeatureOfInterest</h1><div class=CBody><p>Read and write SOS GetFeatureOfInterest.  This is used to get to the location of the features (stations).  The stations can have 1 or more sensors.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest"></a>OpenLayers.<wbr>Format.<wbr>SOSGetFeatureOfInterest</h1><div class=CBody><p>Read and write SOS GetFeatureOfInterest.  This is used to get to the location of the features (stations).  The stations can have 1 or more sensors.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMo [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.Constants"></a>Constants</h3></div></div>
 
@@ -33,7 +33,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetFeatureOfInterest.Properties"></a>Properties</h3></div></div>
 
@@ -47,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a GetFeatureOfInterest response and return an array of features</div></div><div clas [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a GetFeatureOfInterest response and return an array of features</div></div><div clas [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/SOSGetObservation-js.html b/doc/devdocs/files/OpenLayers/Format/SOSGetObservation-js.html
index 4b59613..cc0947d 100644
--- a/doc/devdocs/files/OpenLayers/Format/SOSGetObservation-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/SOSGetObservation-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.SOSGetObservation - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetObservation"></a>OpenLayers.<wbr>Format.<wbr>SOSGetObservation</h1><div class=CBody><p>Read and write SOS GetObersation (to get the actual values from a sensor) version 1.0.0</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.SOSGetObservation"></a>OpenLayers.<wbr>Format.<wbr>SOSGetObservation</h1><div class=CBody><p>Read and write SOS GetObersation (to get the actual values from a sensor) version 1.0.0</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Fo [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.SOSGetObservation.Properties"></a>Properties</h3></div></div>
 
@@ -51,15 +51,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0  [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0  [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/Text-js.html b/doc/devdocs/files/OpenLayers/Format/Text-js.html
index a088aea..c71b405 100644
--- a/doc/devdocs/files/OpenLayers/Format/Text-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/Text-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.Text - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WCSCapabilities-js.html b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities-js.html
new file mode 100644
index 0000000..ea645fd
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities-js.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities</h1><div class=CBody><p>Read WCS Capabilities.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML.VersionedOGC</a></li></ul><!--STAR [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.defaultVersion"></a>defaultVersion</h3><div class=CBody><p>{String} Version number to assume if none found.   Default is “1.1.0”.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.OpenLayers.Format.WCSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities</h3><div class=CBody><p>Create a new parser for WCS capabilities.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance.< [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.read"></a>read</h3><div class=CBody><p>Read capabilities data from a string, and return a list of coverages.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>data</td><td class=CDLDescription>{String} or {DOMElement} data to read/parse.</td></tr></table><h4 class=CHeading>Returns</h4><p>{Array} List of named cov [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1-js.html b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1-js.html
new file mode 100644
index 0000000..5304b02
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1-js.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="ND [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_ [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1.defaultPrefix"></a>defaultPrefix</h3></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities.v1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([15, 16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of coverages.</div></div><div clas [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1_0_0-js.html
new file mode 100644
index 0000000..cd00765
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1_0_0-js.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities/v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities/<wbr>v1_0_0</h1><div class=CBody><p>Read WCS Capabilities version 1.0.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="v1-js.html#OpenLayers.Format.WCSCapabilities.v1" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WCSCapabilities.v [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.OpenLayers.Format.WCSCapabilities.v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.<wbr>v1_0_0</h3><div class=CBody><p>Create a new parser for WCS capabilities version 1.0.0.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose p [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.namespaces"></a>namespaces</h3><div class=CBody><p>{Object} Mapping of namespace aliases to namespace URIs.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_0_0.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([15, 16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1_1_0-js.html
new file mode 100644
index 0000000..c688793
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Format/WCSCapabilities/v1_1_0-js.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSCapabilities/v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities/<wbr>v1_1_0</h1><div class=CBody><p>Read WCS Capabilities version 1.1.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="v1-js.html#OpenLayers.Format.WCSCapabilities.v1" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WCSCapabilities.v [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.namespaces"></a>namespaces</h3><div class=CBody><p>{Object} Mapping of namespace aliases to namespace URIs.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.OpenLayers.Format.WCSCapabilities.v1_1_0"></a>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.<wbr>v1_1_0</h3><div class=CBody><p>Create a new parser for WCS capabilities version 1.1.0.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose p [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSCapabilities/v1_1_0.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([15, 16, 17, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Format/WCSGetCoverage-js.html b/doc/devdocs/files/OpenLayers/Format/WCSGetCoverage-js.html
index c218249..b4bbb49 100644
--- a/doc/devdocs/files/OpenLayers/Format/WCSGetCoverage-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WCSGetCoverage-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WCSGetCoverage version 1.1.0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSGetCoverage_version_1.1.0"></a>OpenLayers.<wbr>Format.<wbr>WCSGetCoverage version 1.1.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacin [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WCSGetCoverage_version_1.1.0"></a>OpenLayers.<wbr>Format.<wbr>WCSGetCoverage version 1.1.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div cla [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WCSGetCoverage_version_1.1.0.Properties"></a>Properties</h3></div></div>
 
@@ -45,15 +45,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CClass>Read and write XML. </div>< [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFS-js.html b/doc/devdocs/files/OpenLayers/Format/WFS-js.html
index 8b33a58..a87a055 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFS-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,15 +45,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Takes a feature list, and generates a WFS-T Transaction</div></div><div class=CToolTi [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Takes a feature list, and generates a WFS-T Transaction</div></div><div class=CToolTi [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities-js.html b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities-js.html
index 590d239..3e9b8c6 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,14 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities</h1><div class=CBody><p>Read WFS Capabilities.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML.VersionedOGC</a></li></ul><!--STAR [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities</h1><div class=CBody><p>Read WFS Capabilities.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XML.VersionedOGC</a></li></ul><!--STAR [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.defaultVersion"></a>defaultVersion</h3><div class=CBody><p>{String} Version number to assume if none found.   Default is “1.1.0”.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
-
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.OpenLayers.Format.WFSCapabilities"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities</h3><div class=CBody><p>Create a new parser for WFS capabilities.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on this instance.< [...]
@@ -33,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html
index eeb3f55..fb19699 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="ND [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,12 +11,14 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div cla [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WFSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.namespaces"></a>namespaces</h3><div class=CBody><p>{Object} Mapping of namespace aliases to namespace URIs.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.defaultPrefix"></a>defaultPrefix</h3></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSCapabilities.v1.Constructor"></a>Constructor</h3></div></div>
@@ -37,15 +39,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><!--END_ND_T [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><div class=C [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html
index 4474f54..37dda99 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities/v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html
index 07191aa..254af8e 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFSCapabilities/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSCapabilities/v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([10, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([10, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html b/doc/devdocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html
index be624b6..3903356 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFSDescribeFeatureType-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFSDescribeFeatureType - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,10 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType"></a>OpenLayers.<wbr>Format.<wbr>WFSDescribeFeatureType</h1><div class=CBody><p>Read WFS DescribeFeatureType response</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SB [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType"></a>OpenLayers.<wbr>Format.<wbr>WFSDescribeFeatureType</h1><div class=CBody><p>Read WFS DescribeFeatureType response</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMA [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType.Properties"></a>Properties</h3></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType.regExes"></a>regExes</h3><div class=CBody><p>Compiled regular expressions for manipulating strings.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType.namespaces"></a>namespaces</h3><div class=CBody><p>{Object} Mapping of namespace aliases to namespace URIs.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFSDescribeFeatureType.Constructor"></a>Constructor</h3></div></div>
@@ -37,15 +39,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>readRestriction: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Reads re [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>readRestriction: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Reads re [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFST-js.html b/doc/devdocs/files/OpenLayers/Format/WFST-js.html
index 21af31d..5f743a7 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFST-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFST-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="Cont [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="Cont [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFST/v1-js.html b/doc/devdocs/files/OpenLayers/Format/WFST/v1-js.html
index 1d932da..94e3996 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFST/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFST/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h1><div class=CBody><p>Superclass for WFST parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h1><div class=CBody><p>Superclass for WFST parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=S [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.Properties"></a>Properties</h3></div></div>
 
@@ -33,7 +33,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v1_0_0-js.html#OpenLayers.Format.WFST.v1_0_0" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Format.WFST.v1_0_0</a> or <a href="v1_1_0-js.html#OpenLayers.Format.WFST.v1_1_0 [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.OpenLayers.Format.WFST.v1"></a>OpenLayers.<wbr>Format.<wbr>WFST.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="v1_0_0-js.html#OpenLayers.Format.WFST.v1_0_0" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">OpenLayers.Format.WFST.v1_0_0</a> or <a href="v1_1_0-js.html#OpenLayers.Format.WFST.v1_1_0 [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
@@ -43,13 +43,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.writers"></a>writers</h3><div class=CBody><p>As a compliment to the readers property, this structure contains public writing functions grouped by namespace alias and named like the node names they produce.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.schemaLocationAttr"></a>schemaLocationAttr</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>schemaLocationAttr: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></tab [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.setFilterProperty"></a>setFilterProperty</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setFilterProperty: function(</td><td class="PParameter  prettyprint " nowrap>filter</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WFST.v1.setFilterProperty"></a>setFilterProperty</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setFilterProperty: function(</td><td class="PParameter  prettyprint " nowrap>filter</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table>< [...]
 
 </div><!--Content-->
 
@@ -57,15 +57,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getSrsName: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div> [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getSrsName: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div> [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFST/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/WFST/v1_0_0-js.html
index e20ca42..8d9165a 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFST/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFST/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WFST/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/WFST/v1_1_0-js.html
index bf20d76..53e0df7 100644
--- a/doc/devdocs/files/OpenLayers/Format/WFST/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WFST/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WFST.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([11, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([11, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WKT-js.html b/doc/devdocs/files/OpenLayers/Format/WKT-js.html
index ac950ad..c4bd6c8 100644
--- a/doc/devdocs/files/OpenLayers/Format/WKT-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WKT-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WKT - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMC-js.html b/doc/devdocs/files/OpenLayers/Format/WMC-js.html
index 45488f4..c0af29b 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMC-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMC-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMC/v1-js.html b/doc/devdocs/files/OpenLayers/Format/WMC/v1-js.html
index d76e1ef..9926fb3 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMC/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMC/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h1><div class=CBody><p>Superclass for WMC version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspa [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h1><div class=CBody><p>Superclass for WMC version 1 parsers.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link75 onMouseOver="ShowTip(event, 'tt75', 'link75')" onMouseOut="HideTip('tt75')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.Properties_and_Functions"></a>Properties and Functions</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.schemaLocation"></a>schemaLocation</h3><div class=CBody><p>{String} Schema location for a particular minor version.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.getNamespacePrefix"></a>getNamespacePrefix</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNamespacePrefix: function(</td><td class="PParameter  prettyprint " nowrap>uri</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.getNamespacePrefix"></a>getNamespacePrefix</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNamespacePrefix: function(</td><td class="PParameter  prettyprint " nowrap>uri</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.defaultPrefix"></a>defaultPrefix</h3></div></div>
 
@@ -31,7 +31,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../WMC-js.html#OpenLayers.Format.WMC" class=LClass id=link76 onMouseOver="ShowTip(event, 'tt75', 'link76')" onMouseOut="HideTip('tt75')">OpenLayers.Format.WMC</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.OpenLayers.Format.WMC.v1"></a>OpenLayers.<wbr>Format.<wbr>WMC.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../WMC-js.html#OpenLayers.Format.WMC" class=LClass id=link77 onMouseOver="ShowTip(event, 'tt76', 'link77')" onMouseOut="HideTip('tt76')">OpenLayers.Format.WMC</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMC.v1.Functions"></a>Functions</h3></div></div>
 
@@ -185,15 +185,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNamespacePrefix: function(</td><td class="PParameter  prettyprint " nowrap>uri</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Get the namespace prefix for a given uri from the namespaces object.</div></d [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNamespacePrefix: function(</td><td class="PParameter  prettyprint " nowrap>uri</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Get the namespace prefix for a given uri from the namespaces object.</div></d [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMC/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/WMC/v1_0_0-js.html
index fb70842..bbebefb 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMC/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMC/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMC/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/WMC/v1_1_0-js.html
index 1619752..195810f 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMC/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMC/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMC.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([12, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([12, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities-js.html
index 5fc7c93..3ce2d60 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html
index 88b1e9b..2073966 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="ND [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.  Creates the common parts for both WMS 1.1.X and WMS 1.3.X.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUM [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities.v1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities.v1</h1><div class=CBody><p>Abstract class not to be instantiated directly.  Creates the common parts for both WMS 1.1.X and WMS 1.3.X.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSCapabilities.v1.Properties"></a>Properties</h3></div></div>
 
@@ -37,15 +37,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><!--END_ND_T [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return a list of layers.</div></div><div class=C [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html
index f07ca86..88a9fb5 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities.v1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html
index 06ac4f9..2b92f9a 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html
index e009204..9f551cf 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities/v1_1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities/<wbr>v1_1_1</h1><div class=CBody><p>Read WMS Capabilities version 1.1.1.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="v1_1-js.html#OpenLayers.Format.WMSCapabilities.v1_1" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.WMSCapabiliti [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSCapabilities/v1_1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSCapabilities/<wbr>v1_1_1</h1><div class=CBody><p>Read WMS Capabilities version 1.1.1.</p><p>Note on <ScaleHint> parsing: If the ‘min’ attribute is set to “0”, no maxScale will be set on the layer object.  If the ‘max’ attribute is set to “Infinity”, no minScale w [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSCapabilities/v1_1_1.Properties"></a>Properties</h3></div></div>
 
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Instances of OpenLayers.Layer.WMS are used to display data from OGC Web Mapping Services. </div></div><div class=CToolTip id="tt2"><div class=CClass>Abstract class not to be instantiated directly.</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html
index 3487a37..3c730d8 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_1_1_WMSC - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" o [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html
index 60aa525..a5f9514 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_3 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad=" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html
index 5b41b3a..8fe5794 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSCapabilities/v1_3_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSCapabilities/v1_3_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([13, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([13, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer-js.html b/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer-js.html
index bd4d86b..673cf3a 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSDescribeLayer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,16 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h1><div class=CBody><p>Read SLD WMS DescribeLayer response DescribeLayer is meant to couple WMS to WFS and WCS</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideT [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h1><div class=CBody><p>Read SLD WMS DescribeLayer response DescribeLayer is meant to couple WMS to WFS and WCS</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML/VersionedOGC-js.html#OpenLayers.Format.XML.VersionedOGC" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideT [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.defaultVersion"></a>defaultVersion</h3><div class=CBody><p>{String} Version number to assume if none found.   Default is “1.1.1”.</p></div></div></div>
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.Functions"></a>Functions</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.getVersion"></a>getVersion</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getVersion: function(</td><td class="PParameter  prettyprint " nowrap>root,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td clas [...]
-
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.Constructor"></a>Constructor</h3></div></div>
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h3><div class=CBody><p>Create a new parser for WMS DescribeLayer responses.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set on t [...]
@@ -35,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([14, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([14, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getVersion: function(</td><td class="PParameter  prettyprint " nowrap>root,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Returns t [...]
+<div class=CToolTip id="tt1"><div class=CClass>Base class for versioned formats, i.e. </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html b/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html
index ec99909..314007c 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSDescribeLayer/v1_1-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSDescribeLayer.v1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad= [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSDescribeLayer.v1_1_1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,15 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer.v1_1</h1><div class=CBody><p>Read SLD WMS DescribeLayer response for WMS 1.1.X WMS 1.1.X is tightly coupled to SLD 1.0.0</p><h4 class=CHeading>Example DescribeLayer request</h4><p><a href="http://demo.opengeo.org/geoserver/wms?request=DescribeLayer&version=1.1.1&layers=topp:states" class=LURL target= [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer.<wbr>v1_1_1</h1><div class=CBody><p>Read SLD WMS DescribeLayer response for WMS 1.1.X WMS 1.1.X is tightly coupled to SLD 1.0.0</p><h4 class=CHeading>Example DescribeLayer request</h4><p><a href="http://demo.opengeo.org/geoserver/wms?request=DescribeLayer&version=1.1.1&layers=topp:states" class=LUR [...]
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.Constructor"></a>Constructor</h3></div></div>
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h3><div class=CBody><p>Create a new parser for WMS DescribeLayer responses.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be set [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.OpenLayers.Format.WMSDescribeLayer"></a>OpenLayers.<wbr>Format.<wbr>WMSDescribeLayer</h3><div class=CBody><p>Create a new parser for WMS DescribeLayer responses.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} An optional object whose properties will be s [...]
 
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.Functions"></a>Functions</h3></div></div>
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSDescribeLayer.v1_1_1.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
 </div><!--Content-->
 
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([14, 15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([14, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html b/doc/devdocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html
index 9c8bf20..d7d8245 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMSGetFeatureInfo-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMSGetFeatureInfo - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo"></a>OpenLayers.<wbr>Format.<wbr>WMSGetFeatureInfo</h1><div class=CBody><p>Class to read GetFeatureInfo responses from Web Mapping Services</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</ [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo"></a>OpenLayers.<wbr>Format.<wbr>WMSGetFeatureInfo</h1><div class=CBody><p>Class to read GetFeatureInfo responses from Web Mapping Services</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Format.XML</a></li></ul>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.Properties"></a>Properties</h3></div></div>
 
@@ -21,7 +21,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.regExes"></a>regExes</h3><div class=CBody><p>Compiled regular expressions for manipulating strings.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.gmlFormat"></a>gmlFormat</h3><div class=CBody><p>{<a href="GML-js.html#OpenLayers.Format.GML" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt1', 'link8')" onMouseOut="HideTip('tt1')">OpenLayers.Format.GML</a>} internal GML format for parsing geometries in msGMLOutput</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.gmlFormat"></a>gmlFormat</h3><div class=CBody><p>{<a href="GML-js.html#OpenLayers.Format.GML" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt1', 'link9')" onMouseOut="HideTip('tt1')">OpenLayers.Format.GML</a>} internal GML format for parsing geometries in msGMLOutput</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.Constructor"></a>Constructor</h3></div></div>
 
@@ -29,7 +29,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMSGetFeatureInfo.read_msGMLOutput"></a>read_msGMLOutput</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read_msGMLOutput: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ta [...]
 
@@ -47,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Read/Wite GML. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read WMS GetFeat [...]
+<div class=CToolTip id="tt1"><div class=CClass>Read/Write GML. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read WMS GetFea [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities-js.html b/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities-js.html
index 4657bd9..cc1a498 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMTSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,7 +27,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMTSCapabilities.read"></a>read</h3><div class=CBody><p>Read capabilities data from a string, and return information about the service (offering and observedProperty mostly).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>data</td><td class=CDLDescription>{String} or {DOMElement} data to read/parse.</td></tr></table><h4 class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMTSCapabilities.createLayer"></a>createLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createLayer: function(</td><td class="PParameter  prettyprint " nowrap>capabilities,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>config</t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WMTSCapabilities.createLayer"></a>createLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createLayer: function(</td><td class="PParameter  prettyprint " nowrap>capabilities,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>config</t [...]
 
 </div><!--Content-->
 
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html
index 5cad554..af62b2b 100644
--- a/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WMTSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WMTSCapabilities.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoa [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WPSCapabilities-js.html b/doc/devdocs/files/OpenLayers/Format/WPSCapabilities-js.html
index f589a7e..6d284fa 100644
--- a/doc/devdocs/files/OpenLayers/Format/WPSCapabilities-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WPSCapabilities-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSCapabilities - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html
index cc0fcb9..3779afc 100644
--- a/doc/devdocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WPSCapabilities/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSCapabilities.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSCapabilities.v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WPSCapabilities.<wbr>v1_0_0</h1><div class=CBody><p>Read WPS Capabilities version 1.0.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div c [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSCapabilities.v1_0_0"></a>OpenLayers.<wbr>Format.<wbr>WPSCapabilities.<wbr>v1_0_0</h1><div class=CBody><p>Read WPS Capabilities version 1.0.0.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_N [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSCapabilities.v1_0_0.Properties"></a>Properties</h3></div></div>
 
@@ -37,15 +37,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return info about the WPS.</div></div><!--END_ND [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Read capabilities data from a string, and return info about the WPS.</div></div><div class [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WPSDescribeProcess-js.html b/doc/devdocs/files/OpenLayers/Format/WPSDescribeProcess-js.html
index 58e3ab1..fddb3c8 100644
--- a/doc/devdocs/files/OpenLayers/Format/WPSDescribeProcess-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WPSDescribeProcess-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSDescribeProcess - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSDescribeProcess"></a>OpenLayers.<wbr>Format.<wbr>WPSDescribeProcess</h1><div class=CBody><p>Read WPS DescribeProcess responses.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><tab [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSDescribeProcess"></a>OpenLayers.<wbr>Format.<wbr>WPSDescribeProcess</h1><div class=CBody><p>Read WPS DescribeProcess responses.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSDescribeProcess.Constants"></a>Constants</h3></div></div>
 
@@ -45,15 +45,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a WPS DescribeProcess and return an object with its information.</div></div><!--END_ [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Parse a WPS DescribeProcess and return an object with its information.</div></div><div cla [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/WPSExecute-js.html b/doc/devdocs/files/OpenLayers/Format/WPSExecute-js.html
index c619ce8..617b1b6 100644
--- a/doc/devdocs/files/OpenLayers/Format/WPSExecute-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/WPSExecute-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.WPSExecute version 1.0.0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0"></a>OpenLayers.<wbr>Format.<wbr>WPSExecute version 1.0.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cell [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0"></a>OpenLayers.<wbr>Format.<wbr>WPSExecute version 1.0.0</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="XML-js.html#OpenLayers.Format.XML" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitl [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.Properties"></a>Properties</h3></div></div>
 
@@ -35,25 +35,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.writers"></a>writers</h3><div class=CBody><p>As a compliment to the readers property, this structure contains public writing functions grouped by namespace alias and named like the node names they produce.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.WPSExecute_version_1.0.0.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
+
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table borde [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/XLS-js.html b/doc/devdocs/files/OpenLayers/Format/XLS-js.html
index 67ced2f..57d0963 100644
--- a/doc/devdocs/files/OpenLayers/Format/XLS-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/XLS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XLS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS"></a>OpenLayers.<wbr>Format.XLS</h1><div class=CBody><p>Read/Wite XLS (OpenLS).  Create a new instance with the <a href="#OpenLayers.Format.XLS.OpenLayers.Format.XLS" class=LConstructor id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XLS</a> constructor.  Currently only implemented for Location Utility Services, m [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS"></a>OpenLayers.<wbr>Format.XLS</h1><div class=CBody><p>Read/Write XLS (OpenLS).  Create a new instance with the <a href="#OpenLayers.Format.XLS.OpenLayers.Format.XLS" class=LConstructor id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Format.XLS</a> constructor.  Currently only implemented for Location Utility Services,  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.Properties"></a>Properties</h3></div></div>
 
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/XLS/v1-js.html b/doc/devdocs/files/OpenLayers/Format/XLS/v1-js.html
index d0dba4d..4546e68 100644
--- a/doc/devdocs/files/OpenLayers/Format/XLS/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/XLS/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XLS.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h1><div class=CBody><p>Superclass for XLS version 1 parsers.  Only supports GeocodeRequest for now.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</di [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h1><div class=CBody><p>Superclass for XLS version 1 parsers.  Only supports GeocodeRequest for now.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../XML-js.html#OpenLayers.Format.XML" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.XML</a></li></ul><!- [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.Properties"></a>Properties</h3></div></div>
 
@@ -27,7 +27,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../XLS-js.html#OpenLayers.Format.XLS" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Format.XLS</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border=0 c [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.OpenLayers.Format.XLS.v1"></a>OpenLayers.<wbr>Format.<wbr>XLS.v1</h3><div class=CBody><p>Instances of this class are not created directly.   Use the <a href="../XLS-js.html#OpenLayers.Format.XLS" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">OpenLayers.Format.XLS</a> constructor instead.</p><h4 class=CHeading>Parameters</h4><table border=0 c [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XLS.v1.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
@@ -45,15 +45,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><di [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>data,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><di [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/XLS/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Format/XLS/v1_1_0-js.html
index bd54195..3d0d01c 100644
--- a/doc/devdocs/files/OpenLayers/Format/XLS/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/XLS/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XLS.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,15 +31,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Superclass for XLS version 1 parsers. </div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Wite XLS (OpenLS). </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>Superclass for XLS version 1 parsers. </div></div><div class=CToolTip id="tt2"><div class=CClass>Read/Write XLS (OpenLS). </div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/XML-js.html b/doc/devdocs/files/OpenLayers/Format/XML-js.html
index ccfdd57..d84aaa4 100644
--- a/doc/devdocs/files/OpenLayers/Format/XML-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/XML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,19 +11,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h1><div class=CBody><p>Read and write XML.   For cross-browser XML generation, use methods on an instance of the XML format class instead of on <code>document<end>.  The DOM creation and traversing methods exposed here all mimic the W3C XML DOM methods.   Create a new parser with the <a href="#OpenLayers.Format.XML. [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h1><div class=CBody><p>Read and write XML.   For cross-browser XML generation, use methods on an instance of the XML format class instead of on <code>document<end>.  The DOM creation and traversing methods exposed here all mimic the W3C XML DOM methods.   Create a new parser with the <a href="#OpenLayers.Format.XML. [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.namespaces"></a>namespaces</h3><div class=CBody><p>{Object} Mapping of namespace aliases to namespace URIs.   Properties of this object should not be set individually.   Read-only.   All XML subclasses should have their own namespaces object.   Use <a href="#OpenLayers.Format.XML.setNamespace" class=LFunction id=link27 onMouseOver="ShowTip(event, 'tt3', 'link27')" onMouseOut="Hide [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.namespaces"></a>namespaces</h3><div class=CBody><p>{Object} Mapping of namespace aliases to namespace URIs.   Properties of this object should not be set individually.   Read-only.   All XML subclasses should have their own namespaces object.   Use <a href="#OpenLayers.Format.XML.setNamespace" class=LFunction id=link28 onMouseOver="ShowTip(event, 'tt3', 'link28')" onMouseOut="Hide [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.namespaceAlias"></a>namespaceAlias</h3><div class=CBody><p>{Object} Mapping of namespace URI to namespace alias.   This object is read-only.   Use <a href="#OpenLayers.Format.XML.setNamespace" class=LFunction id=link28 onMouseOver="ShowTip(event, 'tt3', 'link28')" onMouseOut="HideTip('tt3')">setNamespace</a> to add or set a namespace alias.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.namespaceAlias"></a>namespaceAlias</h3><div class=CBody><p>{Object} Mapping of namespace URI to namespace alias.   This object is read-only.   Use <a href="#OpenLayers.Format.XML.setNamespace" class=LFunction id=link29 onMouseOver="ShowTip(event, 'tt3', 'link29')" onMouseOut="HideTip('tt3')">setNamespace</a> to add or set a namespace alias.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.defaultPrefix"></a>defaultPrefix</h3><div class=CBody><p>{String} The default namespace alias for creating element nodes.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.readers"></a>readers</h3><div class=CBody><p>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name.   The function will be applied in the scope of this parser with two arguments: the node being read and a context object passed from the parent.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.writers"></a>writers</h3><div class=CBody><p>As a compliment to the <a href="#OpenLayers.Format.XML.readers" class=LProperty id=link29 onMouseOver="ShowTip(event, 'tt1', 'link29')" onMouseOut="HideTip('tt1')">readers</a> property, this structure contains public writing functions grouped by namespace alias and named like the node names they produce.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.writers"></a>writers</h3><div class=CBody><p>As a compliment to the <a href="#OpenLayers.Format.XML.readers" class=LProperty id=link30 onMouseOver="ShowTip(event, 'tt1', 'link30')" onMouseOut="HideTip('tt1')">readers</a> property, this structure contains public writing functions grouped by namespace alias and named like the node names they produce.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.xmldom"></a>xmldom</h3><div class=CBody><p>{XMLDom} If this browser uses ActiveX, this will be set to a XMLDOM object.   It is not intended to be a browser sniffing property.  Instead, the xmldom property is used instead of <code>document<end> where namespaced node creation methods are not supported.  In all other browsers, this remains null.</p></div></div></div>
 
@@ -41,6 +41,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createElementNS"></a>createElementNS</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createElementNS: function(</td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name</td><td class= [...]
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createDocumentFragment"></a>createDocumentFragment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createDocumentFragment: function()</td></tr></table></blockquote><p>Create a document fragment node that can be appended to another node created by createElementNS.   This will call document.createDocumentFragment outside of [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createTextNode"></a>createTextNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createTextNode: function(</td><td class="PParameter  prettyprint " nowrap>text</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.getElementsByTagNameNS"></a>getElementsByTagNameNS</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getElementsByTagNameNS: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowr [...]
@@ -59,7 +61,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.setAttributeNS"></a>setAttributeNS</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setAttributeNS: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createElementNSPlus"></a>createElementNSPlus</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createElementNSPlus: function(</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>option [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.createElementNSPlus"></a>createElementNSPlus</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createElementNSPlus: function(</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>option [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.setAttributes"></a>setAttributes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setAttributes: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfte [...]
 
@@ -67,7 +69,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.readChildNodes"></a>readChildNodes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>readChildNodes: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PA [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.writeNode"></a>writeNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeNode: function(</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.writeNode"></a>writeNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>writeNode: function(</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.getChildEl"></a>getChildEl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getChildEl: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td c [...]
 
@@ -77,7 +79,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.lookupNamespaceURI"></a>lookupNamespaceURI</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>lookupNamespaceURI: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>prefix</t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.getXMLDoc"></a>getXMLDoc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getXMLDoc: function()</td></tr></table></blockquote><p>Get an XML document for nodes that are not supported in HTML (e.g. createCDATASection).  On IE, this will either return an existing or create a new <a href="#OpenLayers.Format.XML.xmldom" class=L [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.getXMLDoc"></a>getXMLDoc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getXMLDoc: function()</td></tr></table></blockquote><p>Get an XML document for nodes that are not supported in HTML (e.g. createCDATASection).  On IE, this will either return an existing or create a new <a href="#OpenLayers.Format.XML.xmldom" class=L [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.OpenLayers.Format.XML.lookupNamespaceURI"></a>OpenLayers.<wbr>Format.<wbr>XML.<wbr>lookupNamespaceURI</h3><div class=CBody><p>Takes a prefix and returns the namespace URI associated with it on the given node if found (and null if not).  Supplying null for the prefix will return the default namespace.</p><p>For browsers that support it, this calls the native lookupNamesapceURI function.   In [...]
 
@@ -91,15 +93,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table b [...]
+<div class=CToolTip id="tt1"><div class=CProperty>Contains public functions, grouped by namespace prefix, that will be applied when a namespaced node is found matching the function name. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table b [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Format/XML/VersionedOGC-js.html b/doc/devdocs/files/OpenLayers/Format/XML/VersionedOGC-js.html
index e7912bd..1dd03ba 100644
--- a/doc/devdocs/files/OpenLayers/Format/XML/VersionedOGC-js.html
+++ b/doc/devdocs/files/OpenLayers/Format/XML/VersionedOGC-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Format.XML.VersionedOGC - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOn [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC"></a>OpenLayers.<wbr>Format.<wbr>XML.<wbr>VersionedOGC</h1><div class=CBody><p>Base class for versioned formats, i.e. a format which supports multiple versions.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../../deprecated-js.html#OpenLayers.Format.XML" class=LClass >OpenLayers.Format.XML</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC"></a>OpenLayers.<wbr>Format.<wbr>XML.<wbr>VersionedOGC</h1><div class=CBody><p>Base class for versioned formats, i.e. a format which supports multiple versions.</p><p>To enable checking if parsing succeeded, you will need to define a property called errorProperty on the parser you want to check.  The parser will then check the returned object to see if that [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.Properties"></a>Properties</h3></div></div>
 
@@ -21,7 +21,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.profile"></a>profile</h3><div class=CBody><p>{String} If provided, use a custom profile.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.errorProperty"></a>errorProperty</h3><div class=CBody><p>{String} Which property of the returned object to check for in order to determine whether or not parsing has failed.  In the case that the errorProperty is undefined on the returned object, the document will be run through an OGCExceptionReport parser.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.allowFallback"></a>allowFallback</h3><div class=CBody><p>{Boolean} If a profiled parser cannot be found for the returned version, use a non-profiled parser as the fallback.  Application code using this should take into account that the return object structure might be missing the specifics of the profile.  Defaults to false.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.name"></a>name</h3><div class=CBody><p>{String} The name of this parser, this is the part of the CLASS_NAME except for “OpenLayers.Format.”</p></div></div></div>
 
@@ -37,7 +37,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.getVersion"></a>getVersion</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getVersion: function(</td><td class="PParameter  prettyprint " nowrap>root,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td clas [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.getParser"></a>getParser</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getParser: function(</td><td class="PParameter  prettyprint " nowrap>version</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.getParser"></a>getParser</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getParser: function(</td><td class="PParameter  prettyprint " nowrap>version</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.VersionedOGC.write"></a>write</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>write: function(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParamet [...]
 
@@ -49,15 +49,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([15, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([16, 17, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getVersion: function(</td><td class="PParameter  prettyprint " nowrap>root,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Returns t [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getVersion: function(</td><td class="PParameter  prettyprint " nowrap>root,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Returns t [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry-js.html b/doc/devdocs/files/OpenLayers/Geometry-js.html
index 26a7d91..dc8c4b8 100644
--- a/doc/devdocs/files/OpenLayers/Geometry-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,15 +11,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Geometry"></a>OpenLayers.<wbr>Geometry</h1><div class=CBody><p>A Geometry is a description of a geographic object.   Create an instance of this class with the <a href="#OpenLayers.Geometry.OpenLayers.Geometry" class=LConstructor id=link20 onMouseOver="ShowTip(event, 'tt1', 'link20')" onMouseOut="HideTip('tt1')">OpenLayers.Geometry</a> constructor.   This is a base class, typi [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Geometry"></a>OpenLayers.<wbr>Geometry</h1><div class=CBody><p>A Geometry is a description of a geographic object.   Create an instance of this class with the <a href="#OpenLayers.Geometry.OpenLayers.Geometry" class=LConstructor id=link21 onMouseOver="ShowTip(event, 'tt1', 'link21')" onMouseOut="HideTip('tt1')">OpenLayers.Geometry</a> constructor.   This is a base class, typi [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.id"></a>id</h3><div class=CBody><p>{String} A unique identifier for this geometry.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.parent"></a>parent</h3><div class=CBody><p>{<a href="#OpenLayers.Geometry.OpenLayers.Geometry" class=LConstructor id=link22 onMouseOver="ShowTip(event, 'tt1', 'link22')" onMouseOut="HideTip('tt1')">OpenLayers.Geometry</a>}This is set when a Geometry is added as component of another geometry</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.parent"></a>parent</h3><div class=CBody><p>{<a href="#OpenLayers.Geometry.OpenLayers.Geometry" class=LConstructor id=link23 onMouseOver="ShowTip(event, 'tt1', 'link23')" onMouseOut="HideTip('tt1')">OpenLayers.Geometry</a>}This is set when a Geometry is added as component of another geometry</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.bounds"></a>bounds</h3><div class=CBody><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link23 onMouseOver="ShowTip(event, 'tt2', 'link23')" onMouseOut="HideTip('tt2')">OpenLayers.Bounds</a>} The bounds of this geometry</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.bounds"></a>bounds</h3><div class=CBody><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link24 onMouseOver="ShowTip(event, 'tt2', 'link24')" onMouseOut="HideTip('tt2')">OpenLayers.Bounds</a>} The bounds of this geometry</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Constructor"></a>Constructor</h3></div></div>
 
@@ -29,19 +29,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Destroy this geometry.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clone: function()</td></tr></table></blockquote><p>Create a clone of this geometry.   Does not set any non-standard properties of the cloned geometry.</p><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Geometry.OpenLayers.Geometry" class=LConstructor i [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clone: function()</td></tr></table></blockquote><p>Create a clone of this geometry.   Does not set any non-standard properties of the cloned geometry.</p><h4 class=CHeading>Returns</h4><p>{<a href="#OpenLayers.Geometry.OpenLayers.Geometry" class=LConstructor i [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.setBounds"></a>setBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBounds: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.setBounds"></a>setBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBounds: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.clearBounds"></a>clearBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearBounds: function()</td></tr></table></blockquote><p>Nullify this components bounds and that of its parent as well.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.extendBounds"></a>extendBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extendBounds: function(</td><td class="PParameter  prettyprint " nowrap>newBounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.extendBounds"></a>extendBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extendBounds: function(</td><td class="PParameter  prettyprint " nowrap>newBounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.getBounds"></a>getBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getBounds: function()</td></tr></table></blockquote><p>Get the bounds for this Geometry.  If bounds is not set, it is calculated again, this makes queries faster.</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.getBounds"></a>getBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getBounds: function()</td></tr></table></blockquote><p>Get the bounds for this Geometry.  If bounds is not set, it is calculated again, this makes queries faster.</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.calculateBounds"></a>calculateBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">calculateBounds: function()</td></tr></table></blockquote><p>Recalculate the bounds for the geometry.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.distanceTo"></a>distanceTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>distanceTo: function(</td><td class="PParameter  prettyprint " nowrap>geometry,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPa [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.distanceTo"></a>distanceTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>distanceTo: function(</td><td class="PParameter  prettyprint " nowrap>geometry,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPa [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.getVertices"></a>getVertices</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getVertices: function(</td><td class="PParameter  prettyprint " nowrap>nodes</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
@@ -51,15 +51,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.getArea"></a>getArea</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getArea: function()</td></tr></table></blockquote><p>Calculate the area of this geometry.  This method is defined in subclasses.</p><h4 class=CHeading>Returns</h4><p>{Float} The area of the collection by summing its parts</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.getCentroid"></a>getCentroid</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCentroid: function()</td></tr></table></blockquote><p>Calculate the centroid of this geometry.  This method is defined in subclasses.</p><h4 class=CHeading>Returns</h4><p>{<a href="Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass i [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.getCentroid"></a>getCentroid</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCentroid: function()</td></tr></table></blockquote><p>Calculate the centroid of this geometry.  This method is defined in subclasses.</p><h4 class=CHeading>Returns</h4><p>{<a href="Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass i [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.toString"></a>toString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">toString: function()</td></tr></table></blockquote><p>Returns a text representation of the geometry.   If the WKT format is included in a build, this will be the Well-Known Text representation.</p><h4 class=CHeading>Returns</h4><p>{String} String represe [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.fromWKT"></a>OpenLayers.<wbr>Geometry.<wbr>fromWKT</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.fromWKT = function(</td><td class="PParameter  prettyprint " nowrap>wkt</td><td class="PAfterParameters  prettypr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.fromWKT"></a>OpenLayers.<wbr>Geometry.<wbr>fromWKT</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.fromWKT = function(</td><td class="PParameter  prettyprint " nowrap>wkt</td><td class="PAfterParameters  prettypr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.segmentsIntersect"></a>OpenLayers.<wbr>Geometry.<wbr>segmentsIntersect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.segmentsIntersect = function(</td><td class="PParameter  prettyprint " nowrap>seg1,</td></tr> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.segmentsIntersect"></a>OpenLayers.<wbr>Geometry.<wbr>segmentsIntersect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.segmentsIntersect = function(</td><td class="PParameter  prettyprint " nowrap>seg1,</td></tr> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.distanceToSegment"></a>OpenLayers.<wbr>Geometry.<wbr>distanceToSegment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.distanceToSegment = function(</td><td class="PParameter  prettyprint " nowrap>point,</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.distanceToSegment"></a>OpenLayers.<wbr>Geometry.<wbr>distanceToSegment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.distanceToSegment = function(</td><td class="PParameter  prettyprint " nowrap>point,</td></tr [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.OpenLayers.Geometry.distanceSquaredToSegment"></a>OpenLayers.<wbr>Geometry.<wbr>distanceSquaredToSegment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Geometry.distanceSquaredToSegment = function(</td><td class="PParameter  prettyprint " n [...]
 
 </div><!--Content-->
 
@@ -67,15 +69,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CConstructor>Creates a geometry object.</div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent bounding boxes. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Destroy this geometry.</div></div><div class=CToolTip id="tt4"><div class=CFunction><block [...]
+<div class=CToolTip id="tt1"><div class=CConstructor>Creates a geometry object.</div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent bounding boxes. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Destroy this geometry.</div></div><div class=CToolTip id="tt4"><div class=CFunction><block [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/Collection-js.html b/doc/devdocs/files/OpenLayers/Geometry/Collection-js.html
index 0c54d46..5dd2167 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/Collection-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/Collection-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Collection - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -73,10 +73,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/Curve-js.html b/doc/devdocs/files/OpenLayers/Geometry/Curve-js.html
index 6d838e8..c6de8bd 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/Curve-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/Curve-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Curve - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/LineString-js.html b/doc/devdocs/files/OpenLayers/Geometry/LineString-js.html
index ea4e5f0..f5ffe78 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/LineString-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/LineString-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.LineString - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/LinearRing-js.html b/doc/devdocs/files/OpenLayers/Geometry/LinearRing-js.html
index bb498ac..4c61b31 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/LinearRing-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/LinearRing-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.LinearRing - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/MultiLineString-js.html b/doc/devdocs/files/OpenLayers/Geometry/MultiLineString-js.html
index 4a17147..06e1648 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/MultiLineString-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/MultiLineString-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.MultiLineString - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pret [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/MultiPoint-js.html b/doc/devdocs/files/OpenLayers/Geometry/MultiPoint-js.html
index 92d5461..0cb642a 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/MultiPoint-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/MultiPoint-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.MultiPoint - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPri [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/MultiPolygon-js.html b/doc/devdocs/files/OpenLayers/Geometry/MultiPolygon-js.html
index 35fe928..5df8b94 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/MultiPolygon-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/MultiPolygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.MultiPolygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/Point-js.html b/doc/devdocs/files/OpenLayers/Geometry/Point-js.html
index a8ca52b..2a63341 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/Point-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/Point-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Point - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Geometry/Polygon-js.html b/doc/devdocs/files/OpenLayers/Geometry/Polygon-js.html
index 32e663e..a072a83 100644
--- a/doc/devdocs/files/OpenLayers/Geometry/Polygon-js.html
+++ b/doc/devdocs/files/OpenLayers/Geometry/Polygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Geometry.Polygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([16, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([18, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler-js.html b/doc/devdocs/files/OpenLayers/Handler-js.html
index 5ace64f..80da9ab 100644
--- a/doc/devdocs/files/OpenLayers/Handler-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h1><div class=CBody><p>Base class to construct a higher-level handler for event sequences.   All handlers have activate and deactivate methods.   In addition, they have methods named like browser events.   When a handler is activated, any additional methods named like a browser event is registered as a listener for the corresponding  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h1><div class=CBody><p>Base class to construct a higher-level handler for event sequences.   All handlers have activate and deactivate methods.   In addition, they have methods named like browser events.   When a handler is activated, any additional methods named like a browser event is registered as a listener for the corresponding  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.id"></a>id</h3><div class=CBody><p>{String}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.control"></a>control</h3><div class=CBody><p>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link20 onMouseOver="ShowTip(event, 'tt1', 'link20')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a>}.  The control that initialized this handler.   The control is assumed to have a valid map property - that map is used in the handler’s own setMap method.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.control"></a>control</h3><div class=CBody><p>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link23 onMouseOver="ShowTip(event, 'tt1', 'link23')" onMouseOut="HideTip('tt1')">OpenLayers.Control</a>}.  The control that initialized this handler.   The control is assumed to have a valid map property - that map is used in the handler’s own setMap method.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.map"></a>map</h3><div class=CBody><p>{<a href="Map-js.html#OpenLayers.Map" class=LClass id=link21 onMouseOver="ShowTip(event, 'tt2', 'link21')" onMouseOut="HideTip('tt2')">OpenLayers.Map</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.map"></a>map</h3><div class=CBody><p>{<a href="Map-js.html#OpenLayers.Map" class=LClass id=link24 onMouseOver="ShowTip(event, 'tt2', 'link24')" onMouseOut="HideTip('tt2')">OpenLayers.Map</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.keyMask"></a>keyMask</h3><div class=CBody><p>{Integer} Use bitwise operators and one or more of the OpenLayers.Handler constants to construct a keyMask.   The keyMask is used by <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link22 onMouseOver="ShowTip(event, 'tt4', 'link22')" onMouseOut="HideTip('tt4')">checkModifiers</a>.   If the keyMask matches the combination of keys down [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.keyMask"></a>keyMask</h3><div class=CBody><p>{Integer} Use bitwise operators and one or more of the OpenLayers.Handler constants to construct a keyMask.   The keyMask is used by <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link25 onMouseOver="ShowTip(event, 'tt4', 'link25')" onMouseOut="HideTip('tt4')">checkModifiers</a>.   If the keyMask matches the combination of keys down [...]
 handler.keyMask = OpenLayers.Handler.MOD_SHIFT;
 
 // handler only responds if Ctrl-Shift is down
@@ -32,39 +32,45 @@ handler.keyMask = OpenLayers.Handler.MOD_SHIFT |
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.evt"></a>evt</h3><div class=CBody><p>{Event} This property references the last event handled by the handler.  Note that this property is not part of the stable API.   Use of the evt property should be restricted to controls in the library or other applications that are willing to update with changes to the OpenLayers code.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.touch"></a>touch</h3><div class=CBody><p>{Boolean} Indicates the support of touch events.  When touch events are started touch will be true and all mouse related listeners will do nothing.</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h3><div class=CBody><p>Construct a handler.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link23 onMouseOver="ShowTip(event, 'tt1', 'link23')" onMouseOut="HideTip('tt1')">Ope [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler"></a>OpenLayers.<wbr>Handler</h3><div class=CBody><p>Construct a handler.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="Control-js.html#OpenLayers.Control" class=LClass id=link26 onMouseOver="ShowTip(event, 'tt1', 'link26')" onMouseOut="HideTip('tt1')">Ope [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Functions"></a>Functions</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function (</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.checkModifiers"></a>checkModifiers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>checkModifiers: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.checkModifiers"></a>checkModifiers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>checkModifiers: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.activate"></a>activate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote><p>Turn on the handler.   Returns false if the handler was already active.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The handler was activated.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote><p>Turn off the handler.   Returns false if the handler was already inactive.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The handler was deactivated.</p></div></div></div>
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.startTouch"></a>startTouch</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">startTouch: function()</td></tr></table></blockquote><p>Start touch events, this method must be called by subclasses in “touchstart” method.  When touch events are started <a href="#OpenLayers.Handler.touch" class=LProperty id=link29 onMou [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.callback"></a>callback</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>callback: function (</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>args</td><td class="PAfterParameters  pre [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.register"></a>register</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>register: function (</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>method</td><td class="PAfterParameters  p [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.unregister"></a>unregister</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unregister: function (</td><td class="PParameter  prettyprint " nowrap>name,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>method</td><td class="PAfterParamet [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.setEvent"></a>setEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setEvent: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>With [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.setEvent"></a>setEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setEvent: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>With [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function ()</td></tr></table></blockquote><p>Deconstruct the handler.</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_NONE"></a>OpenLayers.<wbr>Handler.<wbr>MOD_NONE</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link26 onMouseOver="ShowTip(event, 'tt12', 'link26')" onMouseOut="HideTip('tt12')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link27 onMouseOver="ShowTip(event, 'tt4', 'link27')" onMouseOut="HideTip('tt4')" [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_NONE"></a>OpenLayers.<wbr>Handler.<wbr>MOD_NONE</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link30 onMouseOver="ShowTip(event, 'tt13', 'link30')" onMouseOut="HideTip('tt13')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link31 onMouseOver="ShowTip(event, 'tt4', 'link31')" onMouseOut="HideTip('tt4')" [...]
+
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_SHIFT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_SHIFT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link32 onMouseOver="ShowTip(event, 'tt13', 'link32')" onMouseOut="HideTip('tt13')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link33 onMouseOver="ShowTip(event, 'tt4', 'link33')" onMouseOut="HideTip('tt4' [...]
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_SHIFT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_SHIFT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link28 onMouseOver="ShowTip(event, 'tt12', 'link28')" onMouseOut="HideTip('tt12')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link29 onMouseOver="ShowTip(event, 'tt4', 'link29')" onMouseOut="HideTip('tt4' [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_CTRL"></a>OpenLayers.<wbr>Handler.<wbr>MOD_CTRL</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link34 onMouseOver="ShowTip(event, 'tt13', 'link34')" onMouseOut="HideTip('tt13')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link35 onMouseOver="ShowTip(event, 'tt4', 'link35')" onMouseOut="HideTip('tt4')" [...]
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_CTRL"></a>OpenLayers.<wbr>Handler.<wbr>MOD_CTRL</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link30 onMouseOver="ShowTip(event, 'tt12', 'link30')" onMouseOut="HideTip('tt12')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link31 onMouseOver="ShowTip(event, 'tt4', 'link31')" onMouseOut="HideTip('tt4')" [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_ALT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_ALT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link36 onMouseOver="ShowTip(event, 'tt13', 'link36')" onMouseOut="HideTip('tt13')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link37 onMouseOver="ShowTip(event, 'tt4', 'link37')" onMouseOut="HideTip('tt4')">c [...]
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_ALT"></a>OpenLayers.<wbr>Handler.<wbr>MOD_ALT</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link32 onMouseOver="ShowTip(event, 'tt12', 'link32')" onMouseOut="HideTip('tt12')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link33 onMouseOver="ShowTip(event, 'tt4', 'link33')" onMouseOut="HideTip('tt4')">c [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.OpenLayers.Handler.MOD_META"></a>OpenLayers.<wbr>Handler.<wbr>MOD_META</h3><div class=CBody><p>If set as the <a href="#OpenLayers.Handler.keyMask" class=LProperty id=link38 onMouseOver="ShowTip(event, 'tt13', 'link38')" onMouseOut="HideTip('tt13')">keyMask</a>, <a href="#OpenLayers.Handler.checkModifiers" class=LFunction id=link39 onMouseOver="ShowTip(event, 'tt4', 'link39')" onMouseOut="HideTip('tt4')" [...]
 
 </div><!--Content-->
 
@@ -72,15 +78,15 @@ handler.keyMask = OpenLayers.Handler.MOD_SHIFT |
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of OpenLayers.Map are interactive maps embedded in a web page. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function (< [...]
+<div class=CToolTip id="tt1"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of OpenLayers.Map are interactive maps embedded in a web page. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function (< [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Box-js.html b/doc/devdocs/files/OpenLayers/Handler/Box-js.html
index 25de72d..be50789 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Box-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Box-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Box - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Click-js.html b/doc/devdocs/files/OpenLayers/Handler/Click-js.html
index 62315be..fd30b74 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Click-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Click-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Click - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Click"></a>OpenLayers.<wbr>Handler.<wbr>Click</h1><div class=CBody><p>A handler for mouse clicks.   The intention of this handler is to give controls more flexibility with handling clicks.   Browsers trigger click events twice for a double-click.   In addition, the mousedown, mousemove, mouseup sequence fires a click event.   With this handler, controls can  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Click"></a>OpenLayers.<wbr>Handler.<wbr>Click</h1><div class=CBody><p>A handler for mouse clicks.   The intention of this handler is to give controls more flexibility with handling clicks.   Browsers trigger click events twice for a double-click.   In addition, the mousedown, mousemove, mouseup sequence fires a click event.   With this handler, controls can  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.Properties"></a>Properties</h3></div></div>
 
@@ -29,9 +29,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.stopDouble"></a>stopDouble</h3><div class=CBody><p>{Boolean} Stop other listeners from being notified of double-clicks.  Default is false.   If true, any click listeners registered before this one will not be notified of <b>any</b> double-click events.</p><p>The one caveat with stopDouble is that given a map with two click handlers, one with stopDouble true and the other with stopSingle  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.timerId"></a>timerId</h3><div class=CBody><p>{Number} The id of the timeout waiting to clear the <a href="#OpenLayers.Handler.Click.delayedCall" class=LFunction id=link28 onMouseOver="ShowTip(event, 'tt1', 'link28')" onMouseOut="HideTip('tt1')">delayedCall</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.touch"></a>touch</h3><div class=CBody><p>{Boolean} When a touchstart event is fired, touch will be true and all mouse related listeners will do nothing.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.timerId"></a>timerId</h3><div class=CBody><p>{Number} The id of the timeout waiting to clear the <a href="#OpenLayers.Handler.Click.delayedCall" class=LFunction id=link27 onMouseOver="ShowTip(event, 'tt1', 'link27')" onMouseOut="HideTip('tt1')">delayedCall</a>.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.down"></a>down</h3><div class=CBody><p>{Object} Object that store relevant information about the last mousedown or touchstart.  Its ‘xy’ OpenLayers.Pixel property gives the average location of the mouse/touch event.  Its ‘touches’ property records clientX/clientY of each touches.</p></div></div></div>
 
@@ -43,7 +41,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.OpenLayers.Handler.Click"></a>OpenLayers.<wbr>Handler.<wbr>Click</h3><div class=CBody><p>Create a new click handler.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="../Control-js.html#OpenLayers.Control" class=LClass id=link29 onMouseOver="ShowTip(event, 'tt26', 'link29' [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.OpenLayers.Handler.Click"></a>OpenLayers.<wbr>Handler.<wbr>Click</h3><div class=CBody><p>Create a new click handler.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="../Control-js.html#OpenLayers.Control" class=LClass id=link28 onMouseOver="ShowTip(event, 'tt25', 'link28' [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.Functions"></a>Functions</h3></div></div>
 
@@ -53,15 +51,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.touchend"></a>touchend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>touchend: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.unregisterMouseListeners"></a>unregisterMouseListeners</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">unregisterMouseListeners: function()</td></tr></table></blockquote><p>In a touch environment, we don’t want to handle mouse events.</p></div></div></div>
-
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.mousedown"></a>mousedown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mousedown: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.mouseup"></a>mouseup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mouseup: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.rightclick"></a>rightclick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>rightclick: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.delayedRightCall"></a>delayedRightCall</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>delayedRightCall: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.delayedRightCall"></a>delayedRightCall</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>delayedRightCall: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.click"></a>click</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>click: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Handle  [...]
 
@@ -73,15 +69,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.queuePotentialClick"></a>queuePotentialClick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>queuePotentialClick: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.passesTolerance"></a>passesTolerance</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>passesTolerance: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.passesTolerance"></a>passesTolerance</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>passesTolerance: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr>< [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.getTouchDistance"></a>getTouchDistance</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTouchDistance: function(</td><td class="PParameter  prettyprint " nowrap>from,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>to</td><td c [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.passesDblclickTolerance"></a>passesDblclickTolerance</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>passesDblclickTolerance: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.clearTimer"></a>clearTimer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearTimer: function()</td></tr></table></blockquote><p>Clear the timer and set <a href="#OpenLayers.Handler.Click.timerId" class=LProperty id=link32 onMouseOver="ShowTip(event, 'tt20', 'link32')" onMouseOut="HideTip('tt20')">timerId</a> to null.</p> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.clearTimer"></a>clearTimer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearTimer: function()</td></tr></table></blockquote><p>Clear the timer and set <a href="#OpenLayers.Handler.Click.timerId" class=LProperty id=link31 onMouseOver="ShowTip(event, 'tt19', 'link31')" onMouseOut="HideTip('tt19')">timerId</a> to null.</p> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.delayedCall"></a>delayedCall</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>delayedCall: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blo [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.delayedCall"></a>delayedCall</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>delayedCall: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blo [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Click.getEventInfo"></a>getEventInfo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getEventInfo: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
 
@@ -93,15 +89,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>delayedCall: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Sets timerId to null. </div></div><div class=CToolTip id="tt2"><div class=CFunction> [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>delayedCall: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Sets timerId to null. </div></div><div class=CToolTip id="tt2"><div class=CFunction> [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Drag-js.html b/doc/devdocs/files/OpenLayers/Handler/Drag-js.html
index c46ecca..c4cb711 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Drag-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Drag-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Drag - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Drag"></a>OpenLayers.<wbr>Handler.Drag</h1><div class=CBody><p>The drag handler is used to deal with sequences of browser events related to dragging.   The handler is used by controls that want to know when a drag sequence begins, when a drag is happening, and when it has finished.</p><p>Controls that use the drag handler typically construct it with callbacks for ‘do [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Drag"></a>OpenLayers.<wbr>Handler.Drag</h1><div class=CBody><p>The drag handler is used to deal with sequences of browser events related to dragging.   The handler is used by controls that want to know when a drag sequence begins, when a drag is happening, and when it has finished.</p><p>Controls that use the drag handler typically construct it with callbacks for ‘do [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Drag.Properties"></a>Properties</h3></div></div>
 
@@ -21,8 +21,6 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Drag.dragging"></a>dragging</h3><div class=CBody><p>{Boolean}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Drag.touch"></a>touch</h3><div class=CBody><p>{Boolean} When a touchstart event is fired, touch will be true and all mouse related listeners will do nothing.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Drag.last"></a>last</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link26 onMouseOver="ShowTip(event, 'tt1', 'link26')" onMouseOut="HideTip('tt1')">OpenLayers.Pixel</a>} The last pixel location of the drag.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Drag.start"></a>start</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link27 onMouseOver="ShowTip(event, 'tt1', 'link27')" onMouseOut="HideTip('tt1')">OpenLayers.Pixel</a>} The first pixel location of the drag.</p></div></div></div>
@@ -93,10 +91,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Feature-js.html b/doc/devdocs/files/OpenLayers/Handler/Feature-js.html
index 1fcd310..fcab5e5 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Feature-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Feature-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Feature - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Feature"></a>OpenLayers.<wbr>Handler.<wbr>Feature</h1><div class=CBody><p>Handler to respond to mouse events related to a drawn feature.   Callbacks with the following keys will be notified of the following events associated with features: click, clickout, over, out, and dblclick.</p><p>This handler stops event propagation for mousedown and mouseup if those browser events  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Feature"></a>OpenLayers.<wbr>Handler.<wbr>Feature</h1><div class=CBody><p>Handler to respond to mouse events related to a drawn feature.   Callbacks with the following keys will be notified of the following events associated with features: click, clickout, over, out, and dblclick.</p><p>This handler stops event propagation for mousedown and mouseup if those browser events  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Feature.Properties"></a>Properties</h3></div></div>
 
@@ -25,8 +25,6 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Feature.up"></a>up</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link24 onMouseOver="ShowTip(event, 'tt2', 'link24')" onMouseOut="HideTip('tt2')">OpenLayers.Pixel</a>} The location of the last mouseup.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Feature.touch"></a>touch</h3><div class=CBody><p>{Boolean} When a touchstart event is fired, touch will be true and all mouse related listeners will do nothing.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Feature.clickTolerance"></a>clickTolerance</h3><div class=CBody><p>{Number} The number of pixels the mouse can move between mousedown and mouseup for the event to still be considered a click.  Dragging the map should not trigger the click and clickout callbacks unless the map is moved by less than this tolerance.  Defaults to 4.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Feature.geometryTypes"></a>geometryTypes</h3><div class=CBody><p>To restrict dragging to a limited set of geometry types, send a list of strings corresponding to the geometry class names.</p><p>@type Array(String)</p></div></div></div>
@@ -79,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Hover-js.html b/doc/devdocs/files/OpenLayers/Handler/Hover-js.html
index 0075b16..262895c 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Hover-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Hover-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Hover - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Keyboard-js.html b/doc/devdocs/files/OpenLayers/Handler/Keyboard-js.html
index 5ff7e57..5c70c82 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Keyboard-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Keyboard-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.handler.Keyboard - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/MouseWheel-js.html b/doc/devdocs/files/OpenLayers/Handler/MouseWheel-js.html
index 2f2c289..3396324 100644
--- a/doc/devdocs/files/OpenLayers/Handler/MouseWheel-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/MouseWheel-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.MouseWheel - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,23 +11,23 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.MouseWheel"></a>OpenLayers.<wbr>Handler.<wbr>MouseWheel</h1><div class=CBody><p>Handler for wheel up/down events.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Handler-js.html#OpenLayers.Handler" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">OpenLayers.Handler</a></li></ul><!--START_ND_SUMMARY--><div class=Summary>< [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.MouseWheel"></a>OpenLayers.<wbr>Handler.<wbr>MouseWheel</h1><div class=CBody><p>Handler for wheel up/down events.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Handler-js.html#OpenLayers.Handler" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Handler</a></li></ul><!--START_ND_SUMMARY--><div class=Summary>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.wheelListener"></a>wheelListener</h3><div class=CBody><p>{function}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.mousePosition"></a>mousePosition</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt1', 'link9')" onMouseOut="HideTip('tt1')">OpenLayers.Pixel</a>} mousePosition is necessary because evt.clientX/Y is buggy in Moz on wheel events, so we cache and use the value from the last mousemove.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.interval"></a>interval</h3><div class=CBody><p>{Integer} In order to increase server performance, an interval (in milliseconds) can be set to reduce the number of up/down events called.  If set, a new up/down event will not be set until the interval has passed.  Defaults to 0, meaning no interval.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.maxDelta"></a>maxDelta</h3><div class=CBody><p>{Integer} Maximum delta to collect before breaking from the current interval.  In cumulative mode, this also limits the maximum delta returned from the handler.  Default is Number.POSITIVE_INFINITY.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.delta"></a>delta</h3><div class=CBody><p>{Integer} When interval is set, delta collects the mousewheel z-deltas of the events that occur within the interval.  See also the cumulative option</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.cumulative"></a>cumulative</h3><div class=CBody><p>{Boolean} When interval is set: true to collect all the mousewheel z-deltas, false to only record the delta direction (positive or negative)</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.OpenLayers.Handler.MouseWheel"></a>OpenLayers.<wbr>Handler.<wbr>MouseWheel</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="../Control-js.html#OpenLayers.Control" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt9', 'link10')" onMouseOut="HideT [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.OpenLayers.Handler.MouseWheel"></a>OpenLayers.<wbr>Handler.<wbr>MouseWheel</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>control</td><td class=CDLDescription>{<a href="../Control-js.html#OpenLayers.Control" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.Functions"></a>Functions</h3></div></div>
 
@@ -37,8 +37,6 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.wheelZoom"></a>wheelZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>wheelZoom: function(</td><td class="PParameter  prettyprint " nowrap>e</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.mousemove"></a>mousemove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mousemove: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blo [...]
-
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.activate"></a>activate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>activate: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.MouseWheel.deactivate"></a>deactivate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>deactivate: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
@@ -49,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>This class represents a screen coordinate, in x and y coordinates</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellsp [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>onWheelEvent: function(</td><td class="PParamete [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Path-js.html b/doc/devdocs/files/OpenLayers/Handler/Path-js.html
index 3ab23d4..7027a5d 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Path-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Path-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Path - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -87,10 +87,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Pinch-js.html b/doc/devdocs/files/OpenLayers/Handler/Pinch-js.html
index 5fd087b..9c48ffd 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Pinch-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Pinch-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Pinch - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Point-js.html b/doc/devdocs/files/OpenLayers/Handler/Point-js.html
index 8559f55..55cf4f8 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Point-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Point-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Point - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Point"></a>OpenLayers.<wbr>Handler.<wbr>Point</h1><div class=CBody><p>Handler to draw a point on the map.  Point is displayed on activation, moves on mouse move, and is finished on mouse up.  The handler triggers callbacks for ‘done’, ‘cancel’, and ‘modify’.  The modify callback is called with each change in the sketch and will [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Handler.Point"></a>OpenLayers.<wbr>Handler.<wbr>Point</h1><div class=CBody><p>Handler to draw a point on the map.  Point is displayed on activation, moves on mouse move, and is finished on mouse up.  The handler triggers callbacks for ‘done’, ‘cancel’, and ‘modify’.  The modify callback is called with each change in the sketch and will [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Point.Properties"></a>Properties</h3></div></div>
 
@@ -39,8 +39,6 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Point.pixelTolerance"></a>pixelTolerance</h3><div class=CBody><p>{Number} Maximum number of pixels between down and up (mousedown and mouseup, or touchstart and touchend) for the handler to add a new point.  If set to an integer value, if the displacement between down and up is great to this value no point will be added.  Default value is 5.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Point.touch"></a>touch</h3><div class=CBody><p>{Boolean} Indcates the support of touch events.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Point.lastTouchPx"></a>lastTouchPx</h3><div class=CBody><p>{<a href="../BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link36 onMouseOver="ShowTip(event, 'tt3', 'link36')" onMouseOut="HideTip('tt3')">OpenLayers.Pixel</a>} The last pixel used to know the distance between two touches (for double touch).</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Handler.Point.Constructor"></a>Constructor</h3></div></div>
@@ -103,10 +101,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/Polygon-js.html b/doc/devdocs/files/OpenLayers/Handler/Polygon-js.html
index dd2ae76..51db5cb 100644
--- a/doc/devdocs/files/OpenLayers/Handler/Polygon-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/Polygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.Polygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Handler/RegularPolygon-js.html b/doc/devdocs/files/OpenLayers/Handler/RegularPolygon-js.html
index 22e5495..90ba441 100644
--- a/doc/devdocs/files/OpenLayers/Handler/RegularPolygon-js.html
+++ b/doc/devdocs/files/OpenLayers/Handler/RegularPolygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Handler.RegularPolygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -81,10 +81,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([17, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([19, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Icon-js.html b/doc/devdocs/files/OpenLayers/Icon-js.html
index 13cf41f..28badad 100644
--- a/doc/devdocs/files/OpenLayers/Icon-js.html
+++ b/doc/devdocs/files/OpenLayers/Icon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Icon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -59,10 +59,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Kinetic-js.html b/doc/devdocs/files/OpenLayers/Kinetic-js.html
index bd59219..fc9169b 100644
--- a/doc/devdocs/files/OpenLayers/Kinetic-js.html
+++ b/doc/devdocs/files/OpenLayers/Kinetic-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Kinetic.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad= [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Kinetic.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Kinetic.js"></a>Kinetic.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Kinetic.js" >Kinetic.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td><td class=SDesc [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Kinetic.js"></a>Kinetic.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Kinetic.js" >Kinetic.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td><td class=SDesc [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="threshold"></a>threshold</h3><div class=CBody><p>In most cases changing the threshold isn’t needed.  In px/ms, default to 0.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="deceleration"></a>deceleration</h3><div class=CBody><p>{Float} the deseleration in px/ms², default to 0.0035.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="deceleration"></a>deceleration</h3><div class=CBody><p>{Float} the deseleration in px/ms², default to 0.0035.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="nbPoints"></a>nbPoints</h3><div class=CBody><p>{Integer} the number of points we use to calculate the kinetic initial values.</p></div></div></div>
 
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang-js.html b/doc/devdocs/files/OpenLayers/Lang-js.html
index 766eceb..7c2c36a 100644
--- a/doc/devdocs/files/OpenLayers/Lang-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/ar-js.html b/doc/devdocs/files/OpenLayers/Lang/ar-js.html
index 3a72a7c..729ef0e 100644
--- a/doc/devdocs/files/OpenLayers/Lang/ar-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/ar-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ar”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ar]"></a>OpenLayers.<wbr>Lang[“ar”]</h1><div class=CBody><p>Dictionary for العربية.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted f [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ar]"></a>OpenLayers.<wbr>Lang[“ar”]</h1><div class=CBody><p>Dictionary for العربية.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/be-tarask-js.html b/doc/devdocs/files/OpenLayers/Lang/be-tarask-js.html
index 9b5c217..c8f45fc 100644
--- a/doc/devdocs/files/OpenLayers/Lang/be-tarask-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/be-tarask-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“be-tarask”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[be-tarask]"></a>OpenLayers.<wbr>Lang[“be-tarask”]</h1><div class=CBody><p>Dictionary for Беларуская (тарашкевіца).   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[be-tarask]"></a>OpenLayers.<wbr>Lang[“be-tarask”]</h1><div class=CBody><p>Dictionary for Беларуская (тарашкевіца).   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   En [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/bg-js.html b/doc/devdocs/files/OpenLayers/Lang/bg-js.html
index bb06a9e..8022303 100644
--- a/doc/devdocs/files/OpenLayers/Lang/bg-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/bg-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“bg”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[bg]"></a>OpenLayers.<wbr>Lang[“bg”]</h1><div class=CBody><p>Dictionary for Български.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[bg]"></a>OpenLayers.<wbr>Lang[“bg”]</h1><div class=CBody><p>Dictionary for Български.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings  [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/br-js.html b/doc/devdocs/files/OpenLayers/Lang/br-js.html
index 0158a86..cd13f30 100644
--- a/doc/devdocs/files/OpenLayers/Lang/br-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/br-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“br”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/ca-js.html b/doc/devdocs/files/OpenLayers/Lang/ca-js.html
index ebb32e8..ea82bf4 100644
--- a/doc/devdocs/files/OpenLayers/Lang/ca-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/ca-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ca”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/cs-CZ-js.html b/doc/devdocs/files/OpenLayers/Lang/cs-CZ-js.html
index 4f0f673..21fb9cb 100644
--- a/doc/devdocs/files/OpenLayers/Lang/cs-CZ-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/cs-CZ-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“cs-CZ”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[cs-CZ]"></a>OpenLayers.<wbr>Lang[“cs-CZ”]</h1><div class=CBody><p>Dictionary for Česky.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatt [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[cs-CZ]"></a>OpenLayers.<wbr>Lang[“cs-CZ”]</h1><div class=CBody><p>Dictionary for ÄŒesky.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings format [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/da-DK-js.html b/doc/devdocs/files/OpenLayers/Lang/da-DK-js.html
index 25f8195..37e1bae 100644
--- a/doc/devdocs/files/OpenLayers/Lang/da-DK-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/da-DK-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“da-DK”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/de-js.html b/doc/devdocs/files/OpenLayers/Lang/de-js.html
index cb80a03..86ad4ca 100644
--- a/doc/devdocs/files/OpenLayers/Lang/de-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/de-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“de”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/el-js.html b/doc/devdocs/files/OpenLayers/Lang/el-js.html
index f951108..1ca9cc2 100644
--- a/doc/devdocs/files/OpenLayers/Lang/el-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/el-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“el”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[el]"></a>OpenLayers.<wbr>Lang[“el”]</h1><div class=CBody><p>Dictionary for Ελληνικά.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[el]"></a>OpenLayers.<wbr>Lang[“el”]</h1><div class=CBody><p>Dictionary for Ελληνικά.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings fo [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/en-CA-js.html b/doc/devdocs/files/OpenLayers/Lang/en-CA-js.html
index 0c73bd7..54f30f8 100644
--- a/doc/devdocs/files/OpenLayers/Lang/en-CA-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/en-CA-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“en-CA”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/en-js.html b/doc/devdocs/files/OpenLayers/Lang/en-js.html
index 4869976..86fe86b 100644
--- a/doc/devdocs/files/OpenLayers/Lang/en-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/en-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“en”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/es-js.html b/doc/devdocs/files/OpenLayers/Lang/es-js.html
index 89ef111..c251488 100644
--- a/doc/devdocs/files/OpenLayers/Lang/es-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/es-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“es”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/fi-js.html b/doc/devdocs/files/OpenLayers/Lang/fi-js.html
index 3a7e42a..746c02b 100644
--- a/doc/devdocs/files/OpenLayers/Lang/fi-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/fi-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“fi”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/fr-js.html b/doc/devdocs/files/OpenLayers/Lang/fr-js.html
index 16632bd..d3a14fa 100644
--- a/doc/devdocs/files/OpenLayers/Lang/fr-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/fr-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“fr”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[fr]"></a>OpenLayers.<wbr>Lang[“fr”]</h1><div class=CBody><p>Dictionary for Français.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[fr]"></a>OpenLayers.<wbr>Lang[“fr”]</h1><div class=CBody><p>Dictionary for Français.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/fur-js.html b/doc/devdocs/files/OpenLayers/Lang/fur-js.html
index d0b3cd2..124e72d 100644
--- a/doc/devdocs/files/OpenLayers/Lang/fur-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/fur-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“fur”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/gl-js.html b/doc/devdocs/files/OpenLayers/Lang/gl-js.html
index 7f0096f..c4cc2bf 100644
--- a/doc/devdocs/files/OpenLayers/Lang/gl-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/gl-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“gl”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/gsw-js.html b/doc/devdocs/files/OpenLayers/Lang/gsw-js.html
index 80760c5..52e9dc8 100644
--- a/doc/devdocs/files/OpenLayers/Lang/gsw-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/gsw-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“gsw”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/hr-js.html b/doc/devdocs/files/OpenLayers/Lang/hr-js.html
index 23735e2..b3ced75 100644
--- a/doc/devdocs/files/OpenLayers/Lang/hr-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/hr-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“hr”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/hsb-js.html b/doc/devdocs/files/OpenLayers/Lang/hsb-js.html
index 8db6769..8898c67 100644
--- a/doc/devdocs/files/OpenLayers/Lang/hsb-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/hsb-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“hsb”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/hu-js.html b/doc/devdocs/files/OpenLayers/Lang/hu-js.html
index ef48478..f424a50 100644
--- a/doc/devdocs/files/OpenLayers/Lang/hu-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/hu-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“hu”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/ia-js.html b/doc/devdocs/files/OpenLayers/Lang/ia-js.html
index c9e2c8f..939da56 100644
--- a/doc/devdocs/files/OpenLayers/Lang/ia-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/ia-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ia”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/id-js.html b/doc/devdocs/files/OpenLayers/Lang/id-js.html
index 6e3dd3c..359cfac 100644
--- a/doc/devdocs/files/OpenLayers/Lang/id-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/id-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“id”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/io-js.html b/doc/devdocs/files/OpenLayers/Lang/io-js.html
index a3c70bc..3890d7c 100644
--- a/doc/devdocs/files/OpenLayers/Lang/io-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/io-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“io”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/is-js.html b/doc/devdocs/files/OpenLayers/Lang/is-js.html
index 90716c0..3a9ebce 100644
--- a/doc/devdocs/files/OpenLayers/Lang/is-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/is-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“is”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[is]"></a>OpenLayers.<wbr>Lang[“is”]</h1><div class=CBody><p>Dictionary for Íslenska.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[is]"></a>OpenLayers.<wbr>Lang[“is”]</h1><div class=CBody><p>Dictionary for Íslenska.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/it-js.html b/doc/devdocs/files/OpenLayers/Lang/it-js.html
index 4cbfd35..f9d4428 100644
--- a/doc/devdocs/files/OpenLayers/Lang/it-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/it-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“it”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/ja-js.html b/doc/devdocs/files/OpenLayers/Lang/ja-js.html
index b9d9240..3763764 100644
--- a/doc/devdocs/files/OpenLayers/Lang/ja-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/ja-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ja”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ja]"></a>OpenLayers.<wbr>Lang[“ja”]</h1><div class=CBody><p>Dictionary for 日本語.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted for u [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ja]"></a>OpenLayers.<wbr>Lang[“ja”]</h1><div class=CBody><p>Dictionary for 日本語.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/km-js.html b/doc/devdocs/files/OpenLayers/Lang/km-js.html
index 96bcc81..bab5ce2 100644
--- a/doc/devdocs/files/OpenLayers/Lang/km-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/km-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“km”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[km]"></a>OpenLayers.<wbr>Lang[“km”]</h1><div class=CBody><p>Dictionary for ភាសាខ្មែរ.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[km]"></a>OpenLayers.<wbr>Lang[“km”]</h1><div class=CBody><p>Dictionary for ភាសាខ្មែរ.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/ksh-js.html b/doc/devdocs/files/OpenLayers/Lang/ksh-js.html
index caaf9a8..69ba6c1 100644
--- a/doc/devdocs/files/OpenLayers/Lang/ksh-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/ksh-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ksh”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/lt-js.html b/doc/devdocs/files/OpenLayers/Lang/lt-js.html
index b43bcb4..4d3ecc1 100644
--- a/doc/devdocs/files/OpenLayers/Lang/lt-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/lt-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“lt”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/nb-js.html b/doc/devdocs/files/OpenLayers/Lang/nb-js.html
index d49539d..bc39477 100644
--- a/doc/devdocs/files/OpenLayers/Lang/nb-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/nb-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nb”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nb]"></a>OpenLayers.<wbr>Lang[“nb”]</h1><div class=CBody><p>Dictionary for norwegian bokmål (Norway).  Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or st [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nb]"></a>OpenLayers.<wbr>Lang[“nb”]</h1><div class=CBody><p>Dictionary for norwegian bokmÃ¥l (Norway).  Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or s [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/nds-js.html b/doc/devdocs/files/OpenLayers/Lang/nds-js.html
index 630fbfb..e8f43da 100644
--- a/doc/devdocs/files/OpenLayers/Lang/nds-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/nds-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nds”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nds]"></a>OpenLayers.<wbr>Lang[“nds”]</h1><div class=CBody><p>Dictionary for Plattdüütsch.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nds]"></a>OpenLayers.<wbr>Lang[“nds”]</h1><div class=CBody><p>Dictionary for Plattdüütsch.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings fo [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/nl-js.html b/doc/devdocs/files/OpenLayers/Lang/nl-js.html
index cff3b3e..e7ae2d3 100644
--- a/doc/devdocs/files/OpenLayers/Lang/nl-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/nl-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nl”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/nn-js.html b/doc/devdocs/files/OpenLayers/Lang/nn-js.html
index faa7d58..c6f910e 100644
--- a/doc/devdocs/files/OpenLayers/Lang/nn-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/nn-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“nn”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nn]"></a>OpenLayers.<wbr>Lang[“nn”]</h1><div class=CBody><p>Dictionary for ‪Norsk (nynorsk)‬.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings f [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[nn]"></a>OpenLayers.<wbr>Lang[“nn”]</h1><div class=CBody><p>Dictionary for ‪Norsk (nynorsk)‬.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strin [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/oc-js.html b/doc/devdocs/files/OpenLayers/Lang/oc-js.html
index c29136f..d9994e8 100644
--- a/doc/devdocs/files/OpenLayers/Lang/oc-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/oc-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“oc”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/pl-js.html b/doc/devdocs/files/OpenLayers/Lang/pl-js.html
index 1161a12..5f608fc 100644
--- a/doc/devdocs/files/OpenLayers/Lang/pl-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/pl-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“pl”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/pt-BR-js.html b/doc/devdocs/files/OpenLayers/Lang/pt-BR-js.html
index 0fb410a..46541cd 100644
--- a/doc/devdocs/files/OpenLayers/Lang/pt-BR-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/pt-BR-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“pt-br”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt-br]"></a>OpenLayers.<wbr>Lang[“pt-br”]</h1><div class=CBody><p>Dictionary for Português do Brasil.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or s [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt-br]"></a>OpenLayers.<wbr>Lang[“pt-br”]</h1><div class=CBody><p>Dictionary for Português do Brasil.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or  [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/pt-js.html b/doc/devdocs/files/OpenLayers/Lang/pt-js.html
index c37cd89..4aeeae3 100644
--- a/doc/devdocs/files/OpenLayers/Lang/pt-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/pt-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“pt”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt]"></a>OpenLayers.<wbr>Lang[“pt”]</h1><div class=CBody><p>Dictionary for Português.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[pt]"></a>OpenLayers.<wbr>Lang[“pt”]</h1><div class=CBody><p>Dictionary for Português.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatte [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/ro-js.html b/doc/devdocs/files/OpenLayers/Lang/ro-js.html
new file mode 100644
index 0000000..17f34a0
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Lang/ro-js.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ro”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ro]"></a>OpenLayers.<wbr>Lang[“ro”]</h1><div class=CBody><p>Dictionary for Romanian.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted  [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>translate: function(</td><td class="PParameter  prettyprint " nowrap>key,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>context</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Looks up a  [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Lang/ru-js.html b/doc/devdocs/files/OpenLayers/Lang/ru-js.html
index 0b1f8f9..e687339 100644
--- a/doc/devdocs/files/OpenLayers/Lang/ru-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/ru-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“ru”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ru]"></a>OpenLayers.<wbr>Lang[“ru”]</h1><div class=CBody><p>Dictionary for Русский.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted f [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[ru]"></a>OpenLayers.<wbr>Lang[“ru”]</h1><div class=CBody><p>Dictionary for Русский.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/sk-js.html b/doc/devdocs/files/OpenLayers/Lang/sk-js.html
index ab7aaf5..5342bd6 100644
--- a/doc/devdocs/files/OpenLayers/Lang/sk-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/sk-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“sk”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[sk]"></a>OpenLayers.<wbr>Lang[“sk”]</h1><div class=CBody><p>Dictionary for Slovenčina.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatte [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[sk]"></a>OpenLayers.<wbr>Lang[“sk”]</h1><div class=CBody><p>Dictionary for Slovenčina.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatt [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/sv-SE-js.html b/doc/devdocs/files/OpenLayers/Lang/sv-SE-js.html
index 02ac6b9..fdf48ae 100644
--- a/doc/devdocs/files/OpenLayers/Lang/sv-SE-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/sv-SE-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“sv”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/te-js.html b/doc/devdocs/files/OpenLayers/Lang/te-js.html
index 54834e2..a5131d9 100644
--- a/doc/devdocs/files/OpenLayers/Lang/te-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/te-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“te”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[te]"></a>OpenLayers.<wbr>Lang[“te”]</h1><div class=CBody><p>Dictionary for తెలుగు.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatted fo [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[te]"></a>OpenLayers.<wbr>Lang[“te”]</h1><div class=CBody><p>Dictionary for తెలుగు.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings  [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/vi-js.html b/doc/devdocs/files/OpenLayers/Lang/vi-js.html
index aecadaa..7b30d4c 100644
--- a/doc/devdocs/files/OpenLayers/Lang/vi-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/vi-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“vi”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[vi]"></a>OpenLayers.<wbr>Lang[“vi”]</h1><div class=CBody><p>Dictionary for Tiếng Việt.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings formatte [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Lang[vi]"></a>OpenLayers.<wbr>Lang[“vi”]</h1><div class=CBody><p>Dictionary for Tiếng Việt.   Keys for entries are used in calls to <a href="../Lang-js.html#OpenLayers.Lang.translate" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">OpenLayers.Lang.translate</a>.   Entry bodies are normal strings or strings form [...]
 
 </div><!--Content-->
 
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/zh-CN-js.html b/doc/devdocs/files/OpenLayers/Lang/zh-CN-js.html
index f6eb487..9bb60a6 100644
--- a/doc/devdocs/files/OpenLayers/Lang/zh-CN-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/zh-CN-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“zh-CN”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Lang/zh-TW-js.html b/doc/devdocs/files/OpenLayers/Lang/zh-TW-js.html
index db1dfcf..0409f9e 100644
--- a/doc/devdocs/files/OpenLayers/Lang/zh-TW-js.html
+++ b/doc/devdocs/files/OpenLayers/Lang/zh-TW-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Lang[“zh-TW”] - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pre [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([18, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([20, 21, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer-js.html b/doc/devdocs/files/OpenLayers/Layer-js.html
index e178339..ed3df4f 100644
--- a/doc/devdocs/files/OpenLayers/Layer-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,9 +31,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">layer.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of  [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">layer.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.map"></a>map</h3><div class=CBody><p>{<a href="Map-js.html#OpenLayers.Map" class=LClass id=link41 onMouseOver="ShowTip(event, 'tt1', 'link41')" onMouseOut="HideTip('tt1')">OpenLayers.Map</a>} This variable is set when the layer is added to the map, via the accessor function setMap().</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.map"></a>map</h3><div class=CBody><p>{<a href="Map-js.html#OpenLayers.Map" class=LClass id=link42 onMouseOver="ShowTip(event, 'tt1', 'link42')" onMouseOut="HideTip('tt1')">OpenLayers.Map</a>} This variable is set when the layer is added to the map, via the accessor function setMap().</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>{Boolean} Whether or not the layer is a base layer.  This should be set individually by all subclasses.  Default is false</p></div></div></div>
 
@@ -43,29 +43,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.visibility"></a>visibility</h3><div class=CBody><p>{Boolean} The layer should be displayed in the map.   Default is true.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.attribution"></a>attribution</h3><div class=CBody><p>{String} Attribution string, displayed when an <a href="Control/Attribution-js.html#OpenLayers.Control.Attribution" class=LClass id=link42 onMouseOver="ShowTip(event, 'tt2', 'link42')" onMouseOut="HideTip('tt2')">OpenLayers.Control.Attribution</a> has been added to the map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.attribution"></a>attribution</h3><div class=CBody><p>{String} Attribution string, displayed when an <a href="Control/Attribution-js.html#OpenLayers.Control.Attribution" class=LClass id=link43 onMouseOver="ShowTip(event, 'tt2', 'link43')" onMouseOut="HideTip('tt2')">OpenLayers.Control.Attribution</a> has been added to the map.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.inRange"></a>inRange</h3><div class=CBody><p>{Boolean} The current map resolution is within the layer’s min/max range.  This is set in <a href="Map-js.html#OpenLayers.Map.setCenter" class=LFunction id=link43 onMouseOver="ShowTip(event, 'tt41', 'link43')" onMouseOut="HideTip('tt41')">OpenLayers.Map.setCenter</a> whenever the zoom changes.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.inRange"></a>inRange</h3><div class=CBody><p>{Boolean} The current map resolution is within the layer’s min/max range.  This is set in <a href="Map-js.html#OpenLayers.Map.setCenter" class=LFunction id=link44 onMouseOver="ShowTip(event, 'tt41', 'link44')" onMouseOut="HideTip('tt41')">OpenLayers.Map.setCenter</a> whenever the zoom changes.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.options"></a>options</h3><div class=CBody><p>{Object} An optional object whose properties will be set on the layer.  Any of the layer properties can be set as a property of the options object and sent to the constructor when the layer is created.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link44 onMouseOver="ShowTip(event, 'tt3', 'link44')" onMouseOut="HideTip('tt3')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for th [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link45 onMouseOver="ShowTip(event, 'tt3', 'link45')" onMouseOut="HideTip('tt3')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for th [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.gutter"></a>gutter</h3><div class=CBody><p>{Integer} Determines the width (in pixels) of the gutter around image tiles to ignore.   By setting this property to a non-zero value, images will be requested that are wider and taller than the tile size by a value of 2 x gutter.   This allows artifacts of rendering at tile edges to be ignored.   Set a gutter value that is equal to half the size o [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.projection"></a>projection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link45 onMouseOver="ShowTip(event, 'tt4', 'link45')" onMouseOut="HideTip('tt4')">OpenLayers.Projection</a>} or {<a href="BaseTypes-js.html#OpenLayers.String" class=LClass id=link46 onMouseOver="ShowTip(event, 'tt5', 'link46')" onMouseOut="HideTip('tt5')">String</a>} Specifies the projecti [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.projection"></a>projection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link46 onMouseOver="ShowTip(event, 'tt4', 'link46')" onMouseOut="HideTip('tt4')">OpenLayers.Projection</a>} or {<a href="BaseTypes-js.html#OpenLayers.String" class=LClass id=link47 onMouseOver="ShowTip(event, 'tt5', 'link47')" onMouseOut="HideTip('tt5')">String</a>} Specifies the projecti [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.units"></a>units</h3><div class=CBody><p>{String} The layer map units.   Defaults to null.   Possible values are ‘degrees’ (or ‘dd’), ‘m’, ‘ft’, ‘km’, ‘mi’, ‘inches’.  Normally taken from the projection.  Only required if both map and layers do not define a projection, or if they define a projection whi [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.scales"></a>scales</h3><div class=CBody><p>{Array}  An array of map scales in descending order.   The values in the array correspond to the map scale denominator.   Note that these values only make sense if the display (monitor) resolution of the client is correctly guessed by whomever is configuring the application.   In addition, the units property must also be set.  Use <a href="#Op [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.scales"></a>scales</h3><div class=CBody><p>{Array}  An array of map scales in descending order.   The values in the array correspond to the map scale denominator.   Note that these values only make sense if the display (monitor) resolution of the client is correctly guessed by whomever is configuring the application.   In addition, the units property must also be set.  Use <a href="#Op [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.resolutions"></a>resolutions</h3><div class=CBody><p>{Array} A list of map resolutions (map units per pixel) in descending order.   If this is not set in the layer constructor, it will be set based on other resolution related properties (maxExtent, maxResolution, maxScale, etc.).</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the layer.   Defaults to null.</p><p>The center of these bounds will not stray outside of the viewport extent during panning.   In addition, if <a href="#OpenLayers.Layer.displayOutsideMaxExten [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the layer.   Defaults to null.</p><p>The center of these bounds will not stray outside of the viewport extent during panning.   In addition, if <a href="#OpenLayers.Layer.displayOutsideMaxExten [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.minExtent"></a>minExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The minimum extent for the layer.   Defaults to null.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Default max is 360 deg / 256 px, which corresponds to zoom level 0 on gmaps.   Specify a different value in the layer options if you are not using the default <a href="Map-js.html#OpenLayers.Map.tileSize" class=LProperty id=link50 onMouseOver="ShowTip(event, 'tt44', 'link50')" onMouseOut="HideTip('tt44')">OpenLayers.Map.tileSize</a> and [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Default max is 360 deg / 256 px, which corresponds to zoom level 0 on gmaps.   Specify a different value in the layer options if you are not using the default <a href="Map-js.html#OpenLayers.Map.tileSize" class=LProperty id=link51 onMouseOver="ShowTip(event, 'tt44', 'link51')" onMouseOut="HideTip('tt44')">OpenLayers.Map.tileSize</a> and [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.minResolution"></a>minResolution</h3><div class=CBody><p>{Float}</p></div></div></div>
 
@@ -91,7 +91,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=CHeadin [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getOptions"></a>getOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getOptions: function()</td></tr></table></blockquote><p>Extracts an object from the layer with the properties that were set as options, but updates them with the values currently set on the instance.</p><h4 class=CHeading>Returns</h4><p>{Object} the <a href= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getOptions"></a>getOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getOptions: function()</td></tr></table></blockquote><p>Extracts an object from the layer with the properties that were set as options, but updates them with the values currently set on the instance.</p><h4 class=CHeading>Returns</h4><p>{Object} the <a href= [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setName"></a>setName</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setName: function(</td><td class="PParameter  prettyprint " nowrap>newName</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets  [...]
 
@@ -101,19 +101,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.redraw"></a>redraw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">redraw: function()</td></tr></table></blockquote><p>Redraws the layer.   Returns true if the layer was redrawn, false if not.</p><h4 class=CHeading>Returns</h4><p>{Boolean} The layer was redrawn.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td class="PPa [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td class="PPa [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.moveByPx"></a>moveByPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveByPx: function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy</td><td class="PAfterParameters  prettyprin [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Set the map  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Set the map  [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.afterAdd"></a>afterAdd</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">afterAdd: function()</td></tr></table></blockquote><p>Called at the end of the map.addLayer sequence.   At this point, the map will have a base layer.   To be overridden by subclasses.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Jus [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Jus [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getImageSize"></a>getImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getImageSize: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getImageSize"></a>getImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getImageSize: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getVisibility"></a>getVisibility</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getVisibility: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean} The layer should be displayed (if in range).</p></div></div></div>
 
@@ -133,19 +133,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getResolution"></a>getResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getResolution: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The currently selected resolution of the map, taken from the resolutions array, indexed by current zoom level.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link58 onMouseOver="ShowTip(event, 'tt30', 'link58')" onMouseOut="HideTip('tt30')">OpenLayers.Bounds</a> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link59 onMouseOver="ShowTip(event, 'tt30', 'link59')" onMouseOut="HideTip('tt30')">OpenLayers.Bounds</a> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function(</td><td class="PParameter  prettyprint " nowrap>extent,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function(</td><td class="PParameter  prettyprint " nowrap>extent,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getDataExtent"></a>getDataExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getDataExtent: function ()</td></tr></table></blockquote><p>Calculates the max extent which includes all of the data for the layer.  This function is to be implemented by subclasses.</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds- [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getDataExtent"></a>getDataExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getDataExtent: function ()</td></tr></table></blockquote><p>Calculates the max extent which includes all of the data for the layer.  This function is to be implemented by subclasses.</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds- [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getResolutionForZoom"></a>getResolutionForZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getResolutionForZoom: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getZoomForResolution"></a>getZoomForResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForResolution: function(</td><td class="PParameter  prettyprint " nowrap>resolution,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getLonLatFromViewPortPx"></a>getLonLatFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromViewPortPx: function (</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getLonLatFromViewPortPx"></a>getLonLatFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromViewPortPx: function (</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " now [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " now [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity: function(</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
 
@@ -153,7 +153,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.setZIndex"></a>setZIndex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setZIndex: function (</td><td class="PParameter  prettyprint " nowrap>zIndex</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.adjustBounds"></a>adjustBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>adjustBounds: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bloc [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.adjustBounds"></a>adjustBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>adjustBounds: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bloc [...]
 
 </div><!--Content-->
 
@@ -161,10 +161,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html b/doc/devdocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html
index 8b4ca8e..e5947ad 100644
--- a/doc/devdocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/ArcGIS93Rest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.ArcGIS93Rest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/ArcGISCache-js.html b/doc/devdocs/files/OpenLayers/Layer/ArcGISCache-js.html
index c1626f3..c1310e4 100644
--- a/doc/devdocs/files/OpenLayers/Layer/ArcGISCache-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/ArcGISCache-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGISCache.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGISCache.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="ArcGISCache.js"></a>ArcGISCache.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#ArcGISCache.js" >ArcGISCache.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="ArcGISCache.js"></a>ArcGISCache.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#ArcGISCache.js" >ArcGISCache.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Properties"></a>Properties</h3></div></div>
 
@@ -47,13 +47,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns an exact clone of this  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMaxExtent: function()</td></tr></table></blockquote><p>Get this layer’s maximum extent.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link23 onMouseOver="ShowTip(event, 'tt15', 'link23')" onMouseOut [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="initGriddedTiles"></a>initGriddedTiles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initGriddedTiles: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getTileOrigin"></a>getTileOrigin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileOrigin: function()</td></tr></table></blockquote><p>Determine the origin for aligning the grid of tiles.  The origin will be derived from the layer’s <maxExtent> property.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/LonLat-js.htm [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMaxExtent: function()</td></tr></table></blockquote><p>Get this layer’s maximum extent.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link24 onMouseOver="ShowTip(event, 'tt15', 'link24')" onMouseOut [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Determine the URL for a t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getTileOrigin"></a>getTileOrigin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileOrigin: function()</td></tr></table></blockquote><p>Determine the origin for aligning the grid of tiles.  The origin will be derived from the layer’s <maxExtent> property.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/LonLat-js.htm [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="zeroPad"></a>zeroPad</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zeroPad: function(</td><td class="PParameter  prettyprint " nowrap>num,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>len,</td></tr><tr><td></td><td class="PParameter  prettyprint " n [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Determine the URL for a t [...]
 
 </div><!--Content-->
 
@@ -61,15 +61,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getContainingTileCoords: function(</td>< [...]
+<div class=CToolTip id="tt1"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getContainingTileCoords: function(</td>< [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/ArcIMS-js.html b/doc/devdocs/files/OpenLayers/Layer/ArcIMS-js.html
index 604717b..5747a36 100644
--- a/doc/devdocs/files/OpenLayers/Layer/ArcIMS-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/ArcIMS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.ArcIMS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -75,10 +75,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Bing-js.html b/doc/devdocs/files/OpenLayers/Layer/Bing-js.html
index aca5b5c..0bcfae4 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Bing-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Bing-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Bing - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Bing"></a>OpenLayers.<wbr>Layer.Bing</h1><div class=CBody><p>Bing layer using direct tile access as provided by Bing Maps REST Services.  See <a href="http://msdn.microsoft.com/en-us/library/ff701713.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701713.aspx</a> for more information.  Note: Terms of Service compliant use requires t [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Bing"></a>OpenLayers.<wbr>Layer.Bing</h1><div class=CBody><p>Bing layer using direct tile access as provided by Bing Maps REST Services.  See <a href="http://msdn.microsoft.com/en-us/library/ff701713.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701713.aspx</a> for more information.  Note: Terms of Service compliant use requires t [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.Properties"></a>Properties</h3></div></div>
 
@@ -23,13 +23,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.metadata"></a>metadata</h3><div class=CBody><p>{Object} Metadata for this layer, as returned by the callback script</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.protocolRegex"></a>protocolRegex</h3><div class=CBody><p>{RegExp} Regular expression to match and replace http: in bing urls</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.type"></a>type</h3><div class=CBody><p>{String} The layer identifier.   Any non-birdseye imageryType from <a href="http://msdn.microsoft.com/en-us/library/ff701716.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701716.aspx</a> can be used.   Default is “Road”.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.culture"></a>culture</h3><div class=CBody><p>{String} The culture identifier.   See <a href="http://msdn.microsoft.com/en-us/library/ff701709.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701709.aspx</a> for the definition and the possible values.   Default is “en-US”.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.metadataParams"></a>metadataParams</h3><div class=CBody><p>{Object} Optional url parameters for the Get Imagery Metadata request as described here: <a href="http://msdn.microsoft.com/en-us/library/ff701716.aspx" class=LURL target=_top>http://msdn.microsoft.com<wbr>/en-us<wbr>/library<wbr>/ff701716.aspx</a></p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt1', 'link12')" onMouseOut="HideTip('tt1')">OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote></div [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.protocol"></a>protocol</h3><div class=CBody><p>{String} Protocol to use to fetch Imagery Metadata, tiles and bing logo Can be ‘http:’ ‘https:’ or ‘’</p><p>Warning: tiles may not be available under both HTTP and HTTPS protocols.  Microsoft approved use of both HTTP and HTTPS urls for tiles.  However this is undocumented and the Imagery Metadata API always  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.Constructor"></a>Constructor</h3></div></div>
 
@@ -45,13 +49,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.initLayer"></a>initLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">initLayer: function()</td></tr></table></blockquote><p>Sets layer properties according to the metadata provided by the API</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 cla [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 cla [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.updateAttribution"></a>updateAttribution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">updateAttribution: function()</td></tr></table></blockquote><p>Updates the attribution according to the requirements outlined in <a href="http://gis.638310.n2.nabble.com/Bing-imagery-td5789168.html" class=LURL target=_top>http://gis.638310 [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">setMap: function()</td></tr></table></blockquote></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=CHe [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=CHe [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Bing.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div></div>
 
@@ -63,15 +67,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">loadMetadata: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">initLayer: function()</td></tr></table></blockquote>Sets layer properties according to the metadata provided by the API</ [...]
+<div class=CToolTip id="tt1"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relatively little. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">loadMetadata: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpaddin [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Boxes-js.html b/doc/devdocs/files/OpenLayers/Layer/Boxes-js.html
index 6da14c8..65093a2 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Boxes-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Boxes-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Boxes - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/EventPane-js.html b/doc/devdocs/files/OpenLayers/Layer/EventPane-js.html
index 922cdda..f94db74 100644
--- a/doc/devdocs/files/OpenLayers/Layer/EventPane-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/EventPane-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.EventPane - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -67,10 +67,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/FixedZoomLevels-js.html b/doc/devdocs/files/OpenLayers/Layer/FixedZoomLevels-js.html
index 49de8be..0f671bc 100644
--- a/doc/devdocs/files/OpenLayers/Layer/FixedZoomLevels-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/FixedZoomLevels-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.FixedZoomLevels - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyP [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/GeoRSS-js.html b/doc/devdocs/files/OpenLayers/Layer/GeoRSS-js.html
index a892595..8f9372c 100644
--- a/doc/devdocs/files/OpenLayers/Layer/GeoRSS-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/GeoRSS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.GeoRSS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Google-js.html b/doc/devdocs/files/OpenLayers/Layer/Google-js.html
index a7e7380..1c38804 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Google-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Google-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Google - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -117,10 +117,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Google/v3-js.html b/doc/devdocs/files/OpenLayers/Layer/Google/v3-js.html
index 8bbcad5..eb05f52 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Google/v3-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Google/v3-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google/v3.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head>< [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google/v3.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head>< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="v3.js"></a>v3.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#v3.js" >v3.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr  [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="v3.js"></a>v3.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#v3.js" >v3.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Constants"></a>Constants</h3></div></div>
 
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Google.v3"></a>OpenLayers.<wbr>Layer.<wbr>Google.v3</h3><div class=CBody><p>Mixin providing functionality specific to the Google Maps API v3.</p><p>To use this layer, you must include the GMaps v3 API in your html.</p><p>Because OpenLayers needs to control mouse events, it isolates the GMaps mapObject (the DOM elements provided by Google) using the EventPane.  However, because the Terms of Use requir [...]
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Google.v3"></a>OpenLayers.<wbr>Layer.<wbr>Google.v3</h3><div class=CBody><p>Mixin providing functionality specific to the Google Maps API v3.</p><p>To use this layer, you must include the GMaps v3 API in your html.</p><p>Note that this layer configures the google.maps.map object with the “disableDefaultUI” option set to true.  Using UI controls that the Google Maps API provides is not sup [...]
 
 <div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="DEFAULTS"></a>DEFAULTS</h3><div class=CBody><p>{Object} It is not recommended to change the properties set here.  Note that Google.v3 layers only work when sphericalMercator is set to true.</p><blockquote><pre class="prettyprint">{
     sphericalMercator: true,
@@ -28,9 +28,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="loadMapObject"></a>loadMapObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">loadMapObject:function()</td></tr></table></blockquote><p>Load the GMap and register appropriate event listeners.  If we can’t load GMap2, then display a warning message.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="repositionMapElements"></a>repositionMapElements</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">repositionMapElements: function()</td></tr></table></blockquote><p>Waits until powered by and terms of use elements are available and then moves them so they are clickable.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="loadMapObject"></a>loadMapObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">loadMapObject: function()</td></tr></table></blockquote><p>Load the GMap and register appropriate event listeners.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="onMapResize"></a>onMapResize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote></div></div></div>
 
@@ -38,7 +36,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapContainer"></a>getMapContainer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMapContainer: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{DOMElement} the GMap container’s div</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectBoundsFromOLBounds"></a>getMapObjectBoundsFromOLBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectBoundsFromOLBounds: function(</td><td class="PParameter  prettyprint " nowrap>olBounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectBoundsFromOLBounds"></a>getMapObjectBoundsFromOLBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectBoundsFromOLBounds: function(</td><td class="PParameter  prettyprint " nowrap>olBounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectLonLatFromMapObjectPixel"></a>getMapObjectLonLatFromMapObjectPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectLonLatFromMapObjectPixel: function(</td><td class="PParameter  prettyprint " nowrap>moPixel</td><td class="PAfterParameters  prettypr [...]
 
@@ -52,23 +50,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getMapObjectPixelFromXY"></a>getMapObjectPixelFromXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectPixelFromXY: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y</td><td class="PA [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Clean up this layer.</p></div></div></div>
-
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">loadMapObject:function()</td></tr></table></blockquote>Load the GMap and register appropriate event listeners. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">repositionMapElements: function()</td></tr></table></blockquote>W [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">loadMapObject: function()</td></tr></table></blockquote>Load the GMap and register appropriate event listeners.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote></div></div [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Grid-js.html b/doc/devdocs/files/OpenLayers/Layer/Grid-js.html
index 65beb04..7531009 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Grid-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Grid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Grid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,49 +11,39 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h1><div class=CBody><p>Base class for layers that use a lattice of tiles.   Create a new grid layer with the <a href="#OpenLayers.Layer.Grid.OpenLayers.Layer.Grid" class=LConstructor id=link45 onMouseOver="ShowTip(event, 'tt43', 'link45')" onMouseOut="HideTip('tt43')">OpenLayers.Layer.Grid</a> constructor.</p><h4 class=CHeading>Inherits  [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h1><div class=CBody><p>Base class for layers that use a lattice of tiles.   Create a new grid layer with the <a href="#OpenLayers.Layer.Grid.OpenLayers.Layer.Grid" class=LConstructor id=link42 onMouseOver="ShowTip(event, 'tt40', 'link42')" onMouseOut="HideTip('tt40')">OpenLayers.Layer.Grid</a> constructor.</p><h4 class=CHeading>Inherits  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link46 onMouseOver="ShowTip(event, 'tt1', 'link46')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link43 onMouseOver="ShowTip(event, 'tt1', 'link43')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOriginCorner"></a>tileOriginCorner</h3><div class=CBody><p>{String} If the <a href="#OpenLayers.Layer.Grid.tileOrigin" class=LProperty id=link47 onMouseOver="ShowTip(event, 'tt2', 'link47')" onMouseOut="HideTip('tt2')">tileOrigin</a> property is not provided, the tile origin will be derived from the layer’s <a href="../Layer-js.html#OpenLayers.Layer.maxExtent" class=LProperty id=link48 onMo [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOriginCorner"></a>tileOriginCorner</h3><div class=CBody><p>{String} If the <a href="#OpenLayers.Layer.Grid.tileOrigin" class=LProperty id=link44 onMouseOver="ShowTip(event, 'tt2', 'link44')" onMouseOut="HideTip('tt2')">tileOrigin</a> property is not provided, the tile origin will be derived from the layer’s <a href="../Layer-js.html#OpenLayers.Layer.maxExtent" class=LProperty id=link45 onMo [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOrigin"></a>tileOrigin</h3><div class=CBody><p>{<a href="../BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link50 onMouseOver="ShowTip(event, 'tt4', 'link50')" onMouseOut="HideTip('tt4')">OpenLayers.LonLat</a>} Optional origin for aligning the grid of tiles.  If provided, requests for tiles at all resolutions will be aligned with this location (no tiles shall overlap this locati [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOrigin"></a>tileOrigin</h3><div class=CBody><p>{<a href="../BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link47 onMouseOver="ShowTip(event, 'tt4', 'link47')" onMouseOut="HideTip('tt4')">OpenLayers.LonLat</a>} Optional origin for aligning the grid of tiles.  If provided, requests for tiles at all resolutions will be aligned with this location (no tiles shall overlap this locati [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a> instances created by this Layer, if supported by the tile class.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link49 onMouseOver="ShowTip(event, 'tt5', 'link49')" onMouseOut="HideTip('tt5')">OpenLayers.Tile</a> instances created by this Layer, if supported by the tile class.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileClass"></a>tileClass</h3><div class=CBody><p>{<a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a>} The tile class to use for this layer.  Defaults is OpenLayers.Tile.Image.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileClass"></a>tileClass</h3><div class=CBody><p>{<a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link50 onMouseOver="ShowTip(event, 'tt5', 'link50')" onMouseOut="HideTip('tt5')">OpenLayers.Tile</a>} The tile class to use for this layer.  Defaults is OpenLayers.Tile.Image.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.grid"></a>grid</h3><div class=CBody><p>{Array(Array(<a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a>))} This is an array of rows, each row is an array of tiles.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.grid"></a>grid</h3><div class=CBody><p>{Array(Array(<a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link51 onMouseOver="ShowTip(event, 'tt5', 'link51')" onMouseOut="HideTip('tt5')">OpenLayers.Tile</a>))} This is an array of rows, each row is an array of tiles.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.singleTile"></a>singleTile</h3><div class=CBody><p>{Boolean} Moves the layer into single-tile mode, meaning that one tile will be loaded.  The tile’s size will be determined by the ‘ratio’ property.  When the tile is dragged such that it does not cover the entire viewport, it is reloaded.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.ratio"></a>ratio</h3><div class=CBody><p>{Float} Used only when in single-tile mode, this specifies the ratio of the size of the single tile to the size of the map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.ratio"></a>ratio</h3><div class=CBody><p>{Float} Used only when in single-tile mode, this specifies the ratio of the size of the single tile to the size of the map.  Default value is 1.5.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.buffer"></a>buffer</h3><div class=CBody><p>{Integer} Used only when in gridded mode, this specifies the number of extra rows and colums of tiles on each side which will surround the minimum grid tiles to cover the map.  For very slow loading layers, a larger value may increase performance somewhat when dragging, but will increase bandwidth use significantly.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.transitionEffect"></a>transitionEffect</h3><div class=CBody><p>{String} The transition effect to use when the map is zoomed.  Two posible values:</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>null</td><td class=CDLDescription>No transition effect (the default).</td></tr><tr><td class=CDLEntry>”resize”</td><td class=CDLDescription>Existin [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.transitionEffect"></a>transitionEffect</h3><div class=CBody><p>{String} The transition effect to use when the map is zoomed.  Two posible values:</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>”resize”</td><td class=CDLDescription>Existing tiles are resized on zoom to provide a visual effect of the zoom having taken place immediately.&nbs [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.numLoadingTiles"></a>numLoadingTiles</h3><div class=CBody><p>{Integer} How many tiles are still loading?</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileLoadingDelay"></a>tileLoadingDelay</h3><div class=CBody><p>{Integer} Number of milliseconds before we shift and load tiles when panning.  Ignored if <a href="../Animation-js.html#OpenLayers.Animation.isNative" class=LProperty id=link52 onMouseOver="ShowTip(event, 'tt44', 'link52')" onMouseOut="HideTip('tt44')">OpenLayers.Animation.isNative</a> is true.  Default is 85.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.serverResolutions"></a>serverResolutions</h3><div class=CBody><p>{Array(Number}} This property is documented in subclasses as an API property.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.moveTimerId"></a>moveTimerId</h3><div class=CBody><p>{Number} The id of the <a href="#OpenLayers.Layer.Grid.deferMoveGriddedTiles" class=LProperty id=link53 onMouseOver="ShowTip(event, 'tt5', 'link53')" onMouseOut="HideTip('tt5')">deferMoveGriddedTiles</a> timer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.deferMoveGriddedTiles"></a>deferMoveGriddedTiles</h3><div class=CBody><p>{Function} A function that defers execution of <a href="#OpenLayers.Layer.Grid.moveGriddedTiles" class=LFunction id=link54 onMouseOver="ShowTip(event, 'tt6', 'link54')" onMouseOut="HideTip('tt6')">moveGriddedTiles</a> by <a href="#OpenLayers.Layer.Grid.tileLoadingDelay" class=LProperty id=link55 onMouseOver="ShowTip(event, 'tt7' [...]
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileQueueId"></a>tileQueueId</h3><div class=CBody><p>{Number} The id of the <a href="#OpenLayers.Layer.Grid.drawTileFromQueue" class=LFunction id=link57 onMouseOver="ShowTip(event, 'tt8', 'link57')" onMouseOut="HideTip('tt8')">drawTileFromQueue</a> animation.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.tileQueue"></a>tileQueue</h3><div class=CBody><p>{Array(<a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a>)} Tiles queued for drawing.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.loading"></a>loading</h3><div class=CBody><p>{Boolean} Indicates if tiles are being loaded.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.backBuffer"></a>backBuffer</h3><div class=CBody><p>{DOMElement} The back buffer.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.gridResolution"></a>gridResolution</h3><div class=CBody><p>{Number} The resolution of the current grid.  Used for backbuffering.  This property is updated each the grid is initialized.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.gridResolution"></a>gridResolution</h3><div class=CBody><p>{Number} The resolution of the current grid.  Used for backbuffer and client zoom.  This property is updated every time the grid is initialized.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.backBufferResolution"></a>backBufferResolution</h3><div class=CBody><p>{Number} The resolution of the current back buffer.  This property is updated each time a back buffer is created.</p></div></div></div>
 
@@ -61,9 +51,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.backBufferTimerId"></a>backBufferTimerId</h3><div class=CBody><p>{Number} The id of the back buffer timer.  This timer is used to delay the removal of the back buffer, thereby preventing flash effects caused by tile animation.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeBackBufferDelay"></a>removeBackBufferDelay</h3><div class=CBody><p>{Number} Delay for removing the backbuffer when all tiles have finished loading.  Can be set to 0 when no css opacity transitions for the olTileImage class are used.  Default is 0 for <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link58 onMouseOver="ShowTip(event, 'tt45', 'link58')" onMouseOut="HideTip [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeBackBufferDelay"></a>removeBackBufferDelay</h3><div class=CBody><p>{Number} Delay for removing the backbuffer when all tiles have finished loading.  Can be set to 0 when no css opacity transitions for the olTileImage class are used.  Default is 0 for <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link52 onMouseOver="ShowTip(event, 'tt41', 'link52')" onMouseOut="HideTip [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.className"></a>className</h3><div class=CBody><p>{String} Name of the class added to the layer div.  If not set in the options passed to the constructor then className defaults to “olLayerGridSingleTile” for single tile layers (see <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link60 onMouseOver="ShowTip(event, 'tt45', 'link60')" onMouseOut="HideTip('tt45')">singleTi [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.className"></a>className</h3><div class=CBody><p>{String} Name of the class added to the layer div.  If not set in the options passed to the constructor then className defaults to “olLayerGridSingleTile” for single tile layers (see <a href="#OpenLayers.Layer.Grid.singleTile" class=LProperty id=link54 onMouseOver="ShowTip(event, 'tt41', 'link54')" onMouseOut="HideTip('tt41')">singleTi [...]
     -webkit-transition: opacity 0.2s linear;
     -moz-transition: opacity 0.2s linear;
     -o-transition: opacity 0.2s linear;
@@ -73,7 +63,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
     -moz-transition: opacity 0.2s linear;
     -o-transition: opacity 0.2s linear;
     transition: opacity 0.2s linear;
-}</pre></blockquote><p>In that case, to avoid flash effects, <a href="#OpenLayers.Layer.Grid.removeBackBufferDelay" class=LProperty id=link61 onMouseOver="ShowTip(event, 'tt47', 'link61')" onMouseOut="HideTip('tt47')">removeBackBufferDelay</a> should not be zero.</p></div></div></div>
+}</pre></blockquote><p>In that case, to avoid flash effects, <a href="#OpenLayers.Layer.Grid.removeBackBufferDelay" class=LProperty id=link55 onMouseOver="ShowTip(event, 'tt43', 'link55')" onMouseOut="HideTip('tt43')">removeBackBufferDelay</a> should not be zero.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.gridLayout"></a>gridLayout</h3><div class=CBody><p>{Object} Object containing properties tilelon, tilelat, startcol, startrow</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.rowSign"></a>rowSign</h3><div class=CBody><p>{Number} 1 for grids starting at the top, -1 for grids starting at the bottom.  This is used for several grid index and offset calculations.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.transitionendEvents"></a>transitionendEvents</h3><div class=CBody><p>{Array} Event names for transitionend</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.Constructor"></a>Constructor</h3></div></div>
 
@@ -81,35 +77,31 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.initProperties"></a>initProperties</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">initProperties: function()</td></tr></table></blockquote><p>Set any properties that depend on the value of singleTile.  Currently sets removeBackBufferDelay and className</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class= [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Deconstruct the layer and clear the grid.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clearGrid"></a>clearGrid</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearGrid:function()</td></tr></table></blockquote><p>Go through and remove all tiles from the grid, calling destroy() on each of them to kill circular references</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create a  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td class [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>Deconstruct the layer and clear the grid.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileData"></a>getTileData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileData: function(</td><td class="PParameter  prettyprint " nowrap>loc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.mergeNewParams"></a>mergeNewParams</h3><div class=CBody><p>Refetches tiles with new params merged, keeping a backbuffer.  Each loading new tile will have a css class of ‘.olTileReplacing’.  If a stylesheet applies a ‘display: none’ style to that class, any fade-in transition will not apply, and backbuffers for each tile will be removed as soon as the tile is loaded.< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.queueTileDraw"></a>queueTileDraw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>queueTileDraw: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clearGrid"></a>clearGrid</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearGrid:function()</td></tr></table></blockquote><p>Go through and remove all tiles from the grid, calling destroy() on each of them to kill circular references</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.drawTileFromQueue"></a>drawTileFromQueue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">drawTileFromQueue: function()</td></tr></table></blockquote><p>Draws the first tile from the tileQueue, and unqueues that tile</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addOptions"></a>addOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addOptions: function (</td><td class="PParameter  prettyprint " nowrap>newOptions,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>reinitialize</td><td class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clearTileQueue"></a>clearTileQueue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clearTileQueue: function()</td></tr></table></blockquote><p>Clears the animation queue</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create a  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.destroyTile"></a>destroyTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>destroyTile: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getServerResolution"></a>getServerResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getServerResolution: function(</td><td class="PParameter  prettyprint " nowrap>resolution</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileData"></a>getTileData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileData: function(</td><td class="PParameter  prettyprint " nowrap>loc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getServerZoom"></a>getServerZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getServerZoom: function()</td></tr></table></blockquote><p>Return the zoom value corresponding to the best matching server resolution, taking into account <a href="#OpenLayers.Layer.Grid.serverResolutions" class=LProperty id=link67 onMouseOver="Sh [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.destroyTile"></a>destroyTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>destroyTile: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.transformDiv"></a>transformDiv</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>transformDiv: function(</td><td class="PParameter  prettyprint " nowrap>scale</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getServerResolution"></a>getServerResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getServerResolution: function(</td><td class="PParameter  prettyprint " nowrap>resolution</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getResolutionScale"></a>getResolutionScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getResolutionScale: function()</td></tr></table></blockquote><p>Return the value by which the layer is currently scaled.</p><h4 class=CHeading>Returns</h4><p>{Number} The resolution scale.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getServerZoom"></a>getServerZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getServerZoom: function()</td></tr></table></blockquote><p>Return the zoom value corresponding to the best matching server resolution, taking into account <a href="#OpenLayers.Layer.Grid.serverResolutions" class=LProperty id=link63 onMouseOver="Sh [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.applyBackBuffer"></a>applyBackBuffer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>applyBackBuffer: function(</td><td class="PParameter  prettyprint " nowrap>resolution</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
 
@@ -119,37 +111,39 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.moveByPx"></a>moveByPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveByPx: function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy</td><td class="PAfterParameters  prett [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.setTileSize"></a>setTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setTileSize: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTilesBounds"></a>getTilesBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTilesBounds: function()</td></tr></table></blockquote><p>Return the bounds of the tile grid.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link65 onMouseOver="ShowTip(event, 'tt4 [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTilesBounds"></a>getTilesBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTilesBounds: function()</td></tr></table></blockquote><p>Return the bounds of the tile grid.</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link69 onMouseOver="ShowTip(event, 'tt4 [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.initSingleTile"></a>initSingleTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initSingleTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.initSingleTile"></a>initSingleTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initSingleTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.calculateGridLayout"></a>calculateGridLayout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateGridLayout: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>orig [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.calculateGridLayout"></a>calculateGridLayout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateGridLayout: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>orig [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileOrigin"></a>getTileOrigin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileOrigin: function()</td></tr></table></blockquote><p>Determine the origin for aligning the grid of tiles.   If a <a href="#OpenLayers.Layer.Grid.tileOrigin" class=LProperty id=link67 onMouseOver="ShowTip(event, 'tt2', 'link67')" onMouse [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileOrigin"></a>getTileOrigin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileOrigin: function()</td></tr></table></blockquote><p>Determine the origin for aligning the grid of tiles.   If a <a href="#OpenLayers.Layer.Grid.tileOrigin" class=LProperty id=link71 onMouseOver="ShowTip(event, 'tt2', 'link71')" onMouse [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileBoundsForGridIndex"></a>getTileBoundsForGridIndex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBoundsForGridIndex: function(</td><td class="PParameter  prettyprint " nowrap>row,</td></tr><tr><td></td><td class="PParameter  prettyprin [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.initGriddedTiles"></a>initGriddedTiles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initGriddedTiles:function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.initGriddedTiles"></a>initGriddedTiles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initGriddedTiles:function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMaxExtent: function()</td></tr></table></blockquote><p>Get this layer’s maximum extent.  (Implemented as a getter for potential specific implementations in sub-classes.)</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bound [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMaxExtent: function()</td></tr></table></blockquote><p>Get this layer’s maximum extent.  (Implemented as a getter for potential specific implementations in sub-classes.)</p><h4 class=CHeading>Returns</h4><p>{<a href="../BaseTypes/Bound [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addTileMonitoringHooks"></a>addTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.addTileMonitoringHooks"></a>addTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeTileMonitoringHooks"></a>removeTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeTileMonitoringHooks"></a>removeTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.moveGriddedTiles"></a>moveGriddedTiles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveGriddedTiles: function(</td><td class="PParameter  prettyprint " nowrap>deferred</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.moveGriddedTiles"></a>moveGriddedTiles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">moveGriddedTiles: function()</td></tr></table></blockquote></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.shiftRow"></a>shiftRow</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>shiftRow:function(</td><td class="PParameter  prettyprint " nowrap>prepend</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.shiftRow"></a>shiftRow</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>shiftRow: function(</td><td class="PParameter  prettyprint " nowrap>prepend,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>tileSize</td><td class="PAfterParame [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.shiftColumn"></a>shiftColumn</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>shiftColumn: function(</td><td class="PParameter  prettyprint " nowrap>prepend</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.shiftColumn"></a>shiftColumn</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>shiftColumn: function(</td><td class="PParameter  prettyprint " nowrap>prepend,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>tileSize</td><td class="PAf [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.removeExcessTiles"></a>removeExcessTiles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeExcessTiles: function(</td><td class="PParameter  prettyprint " nowrap>rows,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>columns</td> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.onMapResize"></a>onMapResize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote><p>For singleTile layers, this will set a new tile size according to the dimensions of the map pane.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileBounds"></a>getTileBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBounds: function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getTileBounds"></a>getTileBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBounds: function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
 
 </div><!--Content-->
 
@@ -157,15 +151,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CProperty>{OpenLayers.LonLat} Optional origin for aligning the grid of tiles. </div></div><div class=CToolTip id="tt3"><div class=CProperty>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top). </div></div><div class=CToolTip id="tt4"><div class=CClass>This class rep [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CProperty>{OpenLayers.LonLat} Optional origin for aligning the grid of tiles. </div></div><div class=CToolTip id="tt3"><div class=CProperty>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top). </div></div><div class=CToolTip id="tt4"><div class=CClass>This class rep [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/HTTPRequest-js.html b/doc/devdocs/files/OpenLayers/Layer/HTTPRequest-js.html
index 8137a55..74de45e 100644
--- a/doc/devdocs/files/OpenLayers/Layer/HTTPRequest-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/HTTPRequest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.HTTPRequest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,10 +51,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Image-js.html b/doc/devdocs/files/OpenLayers/Layer/Image-js.html
index 5e2807c..0a046a4 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Image-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Image-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Image - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,13 +41,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td clas [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.addTileMonitoringHooks"></a>addTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.addTileMonitoringHooks"></a>addTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.removeTileMonitoringHooks"></a>removeTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>) [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.removeTileMonitoringHooks"></a>removeTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>) [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.setUrl"></a>setUrl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setUrl: function(</td><td class="PParameter  prettyprint " nowrap>newUrl</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 cl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>The [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Image.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function(</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>The [...]
 
 </div><!--Content-->
 
@@ -55,15 +55,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent bounding boxes. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt3"><div class=CClass>Instances of OpenLayers.Tile.Image are used to manage the image tiles used by various layers. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Proto [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent bounding boxes. </div></div><div class=CToolTip id="tt2"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt3"><div class=CClass>Instances of OpenLayers.Tile.Image are used to manage the image tiles used by various layers. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Proto [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/KaMap-js.html b/doc/devdocs/files/OpenLayers/Layer/KaMap-js.html
index 57400a1..e641399 100644
--- a/doc/devdocs/files/OpenLayers/Layer/KaMap-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/KaMap-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.KaMap - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();">< [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.KaMap"></a>OpenLayers.<wbr>Layer.<wbr>KaMap</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Layer.Grid</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><tabl [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.KaMap"></a>OpenLayers.<wbr>Layer.<wbr>KaMap</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Layer.Grid</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><tabl [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.Properties"></a>Properties</h3></div></div>
 
@@ -27,13 +27,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 c [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 c [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.calculateGridLayout"></a>calculateGridLayout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateGridLayout: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>ori [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.calculateGridLayout"></a>calculateGridLayout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateGridLayout: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>ori [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.getTileBoundsForGridIndex"></a>getTileBoundsForGridIndex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBoundsForGridIndex: function(</td><td class="PParameter  prettyprint " nowrap>row,</td></tr><tr><td></td><td class="PParameter  prettypri [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=C [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.getTileBounds"></a>getTileBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBounds: function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.KaMap.getTileBounds"></a>getTileBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getTileBounds: function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
 </div><!--Content-->
 
@@ -41,15 +43,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table bord [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table bord [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/KaMapCache-js.html b/doc/devdocs/files/OpenLayers/Layer/KaMapCache-js.html
index 1a65b5e..3bac861 100644
--- a/doc/devdocs/files/OpenLayers/Layer/KaMapCache-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/KaMapCache-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.KaMapCache - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/MapGuide-js.html b/doc/devdocs/files/OpenLayers/Layer/MapGuide-js.html
index 91f5c48..7cdd54f 100644
--- a/doc/devdocs/files/OpenLayers/Layer/MapGuide-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/MapGuide-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.MapGuide - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.MapGuide"></a>OpenLayers.<wbr>Layer.<wbr>MapGuide</h1><div class=CBody><p>Instances of OpenLayers.Layer.MapGuide are used to display data from a MapGuide OS instance.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">OpenLayers.Layer.Grid</a></ [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.MapGuide"></a>OpenLayers.<wbr>Layer.<wbr>MapGuide</h1><div class=CBody><p>Instances of OpenLayers.Layer.MapGuide are used to display data from a MapGuide OS instance.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">OpenLayers.Layer.Grid</a></ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.Properties"></a>Properties</h3></div></div>
 
@@ -37,7 +37,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.defaultSize"></a>defaultSize</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt1', 'link8')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} Tile size as produced by MapGuide server</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.defaultSize"></a>defaultSize</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt1', 'link7')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} Tile size as produced by MapGuide server</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.tileOriginCorner"></a>tileOriginCorner</h3><div class=CBody><p>{String} MapGuide tile server uses top-left as tile origin</p></div></div></div>
 
@@ -47,31 +47,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Creat [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Creat [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.getFullRequestString"></a>getFullRequestString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFullRequestString:function(</td><td class="PParameter  prettyprint " nowrap>newParams,</td></tr><tr><td></td><td class="PParameter  prettyprint " no [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.getImageFilePath"></a>getImageFilePath</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getImageFilePath:function(</td><td class="PParameter  prettyprint " nowrap>newParams,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>altUrl< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapGuide.calculateGridLayout"></a>calculateGridLayout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateGridLayout: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap> [...]
-
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/MapServer-js.html b/doc/devdocs/files/OpenLayers/Layer/MapServer-js.html
index e7cf5c8..7e6826a 100644
--- a/doc/devdocs/files/OpenLayers/Layer/MapServer-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/MapServer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.MapServer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Markers-js.html b/doc/devdocs/files/OpenLayers/Layer/Markers-js.html
index 79261b7..156c1ac 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Markers-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Markers-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Markers - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/OSM-js.html b/doc/devdocs/files/OpenLayers/Layer/OSM-js.html
index cbf1668..8229fe6 100644
--- a/doc/devdocs/files/OpenLayers/Layer/OSM-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/OSM-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.OSM - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -14,7 +14,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.OSM"></a>OpenLayers.<wbr>Layer.OSM</h1><div class=CBody><p>This layer allows accessing OpenStreetMap tiles.  By default the OpenStreetMap hosted tile.openstreetmap.org Mapnik tileset is used.  If you wish to use a different layer instead, you need to provide a different URL to the constructor.  Here’s an example for using OpenCycleMap:</p><blockquote><pre cla [...]
   ["http://a.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
    "http://b.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
-   "http://c.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png"]);</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry [...]
+   "http://c.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png"]);</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.Properties"></a>Properties</h3></div></div>
 
@@ -31,11 +31,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote><p>When using OSM tilesets other than the default ones, it may be necessary to s [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.tileOptions"></a>tileOptions</h3><div class=CBody><p>{Object} optional configuration options for <a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt1', 'link4')" onMouseOut="HideTip('tt1')">OpenLayers.Tile</a> instances created by this Layer.  Default is</p><blockquote><pre class="prettyprint">{crossOriginKeyword: 'anonymous'}</pre></blockquote><p>When  [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.OpenLayers.Layer.OSM"></a>OpenLayers.<wbr>Layer.OSM</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} The layer name.</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} The tileset URL scheme.</td></tr><tr><td class=CDLEntry>options</td><td [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.OpenLayers.Layer.OSM"></a>OpenLayers.<wbr>Layer.OSM</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} The layer name.</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} The tileset URL scheme.</td></tr><tr><td class=CDLEntry>options</td><td [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.OSM.Functions"></a>Functions</h3></div></div>
 
@@ -47,15 +47,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CClass>The XYZ class is designed to ma [...]
+<div class=CToolTip id="tt1"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relatively little. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterP [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/PointGrid-js.html b/doc/devdocs/files/OpenLayers/Layer/PointGrid-js.html
index 1a84382..289fa0a 100644
--- a/doc/devdocs/files/OpenLayers/Layer/PointGrid-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/PointGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.PointGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -69,10 +69,10 @@ var points = new OpenLayers.Layer.PointGrid({dx: 5, dy: 10, rotation: 15});</pre
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/PointTrack-js.html b/doc/devdocs/files/OpenLayers/Layer/PointTrack-js.html
index f8ad08d..c89e2c0 100644
--- a/doc/devdocs/files/OpenLayers/Layer/PointTrack-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/PointTrack-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.PointTrack - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/SphericalMercator-js.html b/doc/devdocs/files/OpenLayers/Layer/SphericalMercator-js.html
index 97a08c2..9ebd907 100644
--- a/doc/devdocs/files/OpenLayers/Layer/SphericalMercator-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/SphericalMercator-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.SphericalMercator - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prett [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/TMS-js.html b/doc/devdocs/files/OpenLayers/Layer/TMS-js.html
index a7ba778..33d6bb9 100644
--- a/doc/devdocs/files/OpenLayers/Layer/TMS-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/TMS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.TMS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -60,10 +60,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Text-js.html b/doc/devdocs/files/OpenLayers/Layer/Text-js.html
index f83b991..531fb6e 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Text-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Text-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Text - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -48,10 +48,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/TileCache-js.html b/doc/devdocs/files/OpenLayers/Layer/TileCache-js.html
index 17e5d2f..fa90289 100644
--- a/doc/devdocs/files/OpenLayers/Layer/TileCache-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/TileCache-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.TileCache - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/UTFGrid-js.html b/doc/devdocs/files/OpenLayers/Layer/UTFGrid-js.html
index 56b7773..9ca7a09 100644
--- a/doc/devdocs/files/OpenLayers/Layer/UTFGrid-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/UTFGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.UTFGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.UTFGrid"></a>OpenLayers.<wbr>Layer.<wbr>UTFGrid</h1><div class=CBody><p>This Layer reads from UTFGrid tiled data sources.   Since UTFGrids are essentially JSON-based ASCII art with attached attributes, they are not visibly rendered.   In order to use them in the map, you must add a <a href="../Control/UTFGrid-js.html#OpenLayers.Control.UTFGrid" class=LClass id=link4 onM [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.UTFGrid"></a>OpenLayers.<wbr>Layer.<wbr>UTFGrid</h1><div class=CBody><p>This Layer reads from UTFGrid tiled data sources.   Since UTFGrids are essentially JSON-based ASCII art with attached attributes, they are not visibly rendered.   In order to use them in the map, you must add a <a href="../Control/UTFGrid-js.html#OpenLayers.Control.UTFGrid" class=LClass id=link6 onM [...]
     url: "/tiles/world_utfgrid/${z}/${x}/${y}.json",
     utfgridResolution: 4,
     displayInLayerSwitcher: false
@@ -24,33 +24,35 @@ var control = new OpenLayers.Control.UTFGrid({
     callback: function(dataLookup) {
         // do something with returned data
     }
-})</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Layer.UTFGrid" >OpenLayers.<wbr>Layer.<wbr>UTFGri [...]
+})</pre></blockquote><h4 class=CHeading>Inherits from</h4><ul><li><a href="XYZ-js.html#OpenLayers.Layer.XYZ" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">OpenLayers.Layer.XYZ</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Layer.UTFGrid" >OpenLayers.<wbr>Layer.<wbr>UTFGri [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>Default is true, as this is designed to be a base tile source.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>Default is false, as UTFGrids are designed to be a transparent overlay layer.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.projection"></a>projection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">OpenLayers.Projection</a>} Source projection for the UTFGrids.   Default is “EPSG:900913”.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.projection"></a>projection</h3><div class=CBody><p>{<a href="../Projection-js.html#OpenLayers.Projection" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt1', 'link8')" onMouseOut="HideTip('tt1')">OpenLayers.Projection</a>} Source projection for the UTFGrids.   Default is “EPSG:900913”.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.useJSONP"></a>useJSONP</h3><div class=CBody><p>{Boolean} Should we use a JSONP script approach instead of a standard AJAX call?</p><p>Set to true for using utfgrids from another server.  Avoids same-domain policy restrictions.  Note that this only works if the server accepts the callback GET parameter and dynamically wraps the returned json in a function call.</p><p>Default is false</p>< [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.url"></a>url</h3><div class=CBody><p>{String} URL tempate for UTFGrid tiles.   Include x, y, and z parameters.  E.g.  “/tiles/${z}/${x}/${y}.json”</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.utfgridResolution"></a>utfgridResolution</h3><div class=CBody><p>{Number} Ratio of the pixel width to the width of a UTFGrid data point.   If an entry in the grid represents a 4x4 block of pixels, the utfgridResolution would be 4.   Default is 2 (specified in <a href="../Tile/UTFGrid-js.html#OpenLayers.Tile.UTFGrid" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt6', 'link7')" onMou [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.utfgridResolution"></a>utfgridResolution</h3><div class=CBody><p>{Number} Ratio of the pixel width to the width of a UTFGrid data point.   If an entry in the grid represents a 4x4 block of pixels, the utfgridResolution would be 4.   Default is 2 (specified in <a href="../Tile/UTFGrid-js.html#OpenLayers.Tile.UTFGrid" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt8', 'link9')" onMou [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.tileClass"></a>tileClass</h3><div class=CBody><p>{<a href="../../deprecated-js.html#OpenLayers.Tile" class=LClass >OpenLayers.Tile</a>} The tile class to use for this layer.  Defaults is <a href="../Tile/UTFGrid-js.html#OpenLayers.Tile.UTFGrid" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt6', 'link8')" onMouseOut="HideTip('tt6')">OpenLayers.Tile.UTFGrid</a>.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.tileClass"></a>tileClass</h3><div class=CBody><p>{<a href="../Tile-js.html#OpenLayers.Tile" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt2', 'link10')" onMouseOut="HideTip('tt2')">OpenLayers.Tile</a>} The tile class to use for this layer.  Defaults is <a href="../Tile/UTFGrid-js.html#OpenLayers.Tile.UTFGrid" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt8', 'link11')" onMouse [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.OpenLayers.Layer.UTFGrid"></a>OpenLayers.<wbr>Layer.<wbr>UTFGrid</h3><div class=CBody><p>Create a new UTFGrid layer.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>config</td><td class=CDLDescription>{Object} Configuration properties for the layer.</td></tr></table><h4 class=CHeading>Required configuration propertie [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.OpenLayers.Layer.UTFGrid"></a>OpenLayers.<wbr>Layer.<wbr>UTFGrid</h3><div class=CBody><p>Create a new UTFGrid layer.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>config</td><td class=CDLDescription>{Object} Configuration properties for the layer.</td></tr></table><h4 class=CHeading>Required configuration propertie [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.createBackBuffer"></a>createBackBuffer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createBackBuffer: function()</td></tr></table></blockquote><p>The UTFGrid cannot create a back buffer, so this method is overriden.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.getFeatureInfo"></a>getFeatureInfo</h3><div class=CBody><p>Get details about a feature associated with a map location.   The object returned will have id and data properties.   If the given location doesn’t correspond to a feature, null will be returned.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lo [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.getFeatureId"></a>getFeatureId</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatureId: function(</td><td class="PParameter  prettyprint " nowrap>location</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.getFeatureInfo"></a>getFeatureInfo</h3><div class=CBody><p>Get details about a feature associated with a map location.   The object returned will have id and data properties.   If the given location doesn’t correspond to a feature, null will be returned.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lo [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.UTFGrid.getFeatureId"></a>getFeatureId</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatureId: function(</td><td class="PParameter  prettyprint " nowrap>location</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tab [...]
 
 </div><!--Content-->
 
@@ -58,15 +60,15 @@ var control = new OpenLayers.Control.UTFGrid({
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
+<div class=CToolTip id="tt1"><div class=CClass>Methods for coordinate transforms between coordinate systems. </div></div><div class=CToolTip id="tt2"><div class=CClass>This is a class designed to designate a single tile, however it is explicitly designed to do relatively little. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createBackBuffer: function()</td></tr></table></ [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Vector-js.html b/doc/devdocs/files/OpenLayers/Layer/Vector-js.html
index 3a2d78d..47bf379 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Vector-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Vector-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Vector - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Vector"></a>OpenLayers.<wbr>Layer.<wbr>Vector</h1><div class=CBody><p>Instances of OpenLayers.Layer.Vector are used to render vector data from a variety of sources.  Create a new vector layer with the <a href="#OpenLayers.Layer.Vector.OpenLayers.Layer.Vector" class=LConstructor id=link32 onMouseOver="ShowTip(event, 'tt31', 'link32')" onMouseOut="HideTip('tt31')">OpenLayers.L [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Vector"></a>OpenLayers.<wbr>Layer.<wbr>Vector</h1><div class=CBody><p>Instances of OpenLayers.Layer.Vector are used to render vector data from a variety of sources.  Create a new vector layer with the <a href="#OpenLayers.Layer.Vector.OpenLayers.Layer.Vector" class=LConstructor id=link32 onMouseOver="ShowTip(event, 'tt31', 'link32')" onMouseOut="HideTip('tt31')">OpenLayers.L [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.Properties"></a>Properties</h3></div></div>
 
@@ -19,7 +19,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>{Boolean} The layer is a base layer.   Default is false.   Set this property in the layer options.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.isFixed"></a>isFixed</h3><div class=CBody><p>{Boolean} Whether the layer remains in one place while dragging the map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.isFixed"></a>isFixed</h3><div class=CBody><p>{Boolean} Whether the layer remains in one place while dragging the map.  Note that setting this to true will move the layer to the bottom of the layer stack.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Vector.features"></a>features</h3><div class=CBody><p>{Array(<a href="../Feature/Vector-js.html#OpenLayers.Feature.Vector" class=LClass id=link34 onMouseOver="ShowTip(event, 'tt1', 'link34')" onMouseOut="HideTip('tt1')">OpenLayers.Feature.Vector</a>)}</p></div></div></div>
 
@@ -113,10 +113,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Vector/RootContainer-js.html b/doc/devdocs/files/OpenLayers/Layer/Vector/RootContainer-js.html
index 438c023..1c81eda 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Vector/RootContainer-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Vector/RootContainer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Vector.RootContainer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="N [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/WMS-js.html b/doc/devdocs/files/OpenLayers/Layer/WMS-js.html
index cec6e14..63252b5 100644
--- a/doc/devdocs/files/OpenLayers/Layer/WMS-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/WMS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.WMS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -59,10 +59,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/WMTS-js.html b/doc/devdocs/files/OpenLayers/Layer/WMTS-js.html
index eebd037..7bb34a8 100644
--- a/doc/devdocs/files/OpenLayers/Layer/WMTS-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/WMTS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.WMTS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,7 +37,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.formatSuffix"></a>formatSuffix</h3><div class=CBody><p>{String} For REST request encoding, an image format suffix must be included in the request.   If not provided, the suffix will be derived from the <a href="#OpenLayers.Layer.WMTS.format" class=LProperty id=link20 onMouseOver="ShowTip(event, 'tt17', 'link20')" onMouseOut="HideTip('tt17')">format</a> property.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.matrixIds"></a>matrixIds</h3><div class=CBody><p>{Array} A list of tile matrix identifiers.   If not provided, the matrix identifiers will be assumed to be integers corresponding to the map zoom level.   If a list of strings is provided, each item should be the matrix identifier that corresponds to the map zoom level.  Additionally, a list of objects can be provided.   Each object [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.matrixIds"></a>matrixIds</h3><div class=CBody><p>{Array} A list of tile matrix identifiers.   If not provided, the matrix identifiers will be assumed to be integers corresponding to the map zoom level.   If a list of strings is provided, each item should be the matrix identifier that corresponds to the map zoom level.  Additionally, a list of objects can be provided.   Each object [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMTS.dimensions"></a>dimensions</h3><div class=CBody><p>{Array} For RESTful request encoding, extra dimensions may be specified.  Items in this list should be property names in the <a href="#OpenLayers.Layer.WMTS.params" class=LProperty id=link25 onMouseOver="ShowTip(event, 'tt12', 'link25')" onMouseOut="HideTip('tt12')">params</a> object.  Values of extra dimensions will be determined from the  [...]
 
@@ -87,10 +87,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/WorldWind-js.html b/doc/devdocs/files/OpenLayers/Layer/WorldWind-js.html
index 2b5698f..28c73d9 100644
--- a/doc/devdocs/files/OpenLayers/Layer/WorldWind-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/WorldWind-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.WorldWind - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/XYZ-js.html b/doc/devdocs/files/OpenLayers/Layer/XYZ-js.html
index 4f3dfc7..3626612 100644
--- a/doc/devdocs/files/OpenLayers/Layer/XYZ-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/XYZ-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.XYZ - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><sc [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.XYZ"></a>OpenLayers.<wbr>Layer.XYZ</h1><div class=CBody><p>The XYZ class is designed to make it easier for people who have tiles arranged by a standard XYZ grid.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Layer.Grid</a></li></ [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.XYZ"></a>OpenLayers.<wbr>Layer.XYZ</h1><div class=CBody><p>The XYZ class is designed to make it easier for people who have tiles arranged by a standard XYZ grid.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Layer.Grid</a></li></ [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>Default is true, as this is designed to be a base tile source.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.sphericalMecator"></a>sphericalMecator</h3><div class=CBody><p>Whether the tile extents should be set to the defaults for spherical mercator.  Useful for things like OpenStreetMap.  Default is false, except for the OSM subclass.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.sphericalMercator"></a>sphericalMercator</h3><div class=CBody><p>Whether the tile extents should be set to the defaults for spherical mercator.  Useful for things like OpenStreetMap.  Default is false, except for the OSM subclass.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.XYZ.zoomOffset"></a>zoomOffset</h3><div class=CBody><p>{Number} If your cache has more zoom levels than you want to provide access to with this layer, supply a zoomOffset.   This zoom offset is added to the current map zoom level to determine the level for a requested tile.   For example, if you supply a zoomOffset of 3, when the map is at the zoom 0, tiles will be requested from level 3 of your [...]
 
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Layer/Zoomify-js.html b/doc/devdocs/files/OpenLayers/Layer/Zoomify-js.html
index d64c3c5..435e115 100644
--- a/doc/devdocs/files/OpenLayers/Layer/Zoomify-js.html
+++ b/doc/devdocs/files/OpenLayers/Layer/Zoomify-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Layer.Zoomify - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Zoomify"></a>OpenLayers.<wbr>Layer.<wbr>Zoomify</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt8', 'link10')" onMouseOut="HideTip('tt8')">OpenLayers.Layer.Grid</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Layer.Zoomify"></a>OpenLayers.<wbr>Layer.<wbr>Zoomify</h1><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="Grid-js.html#OpenLayers.Layer.Grid" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt7', 'link9')" onMouseOut="HideTip('tt7')">OpenLayers.Layer.Grid</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.size"></a>size</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} The Zoomify image size in pixels.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.size"></a>size</h3><div class=CBody><p>{<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} The Zoomify image size in pixels.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>{Boolean}</p></div></div></div>
 
@@ -27,27 +27,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.tileCountUpToTier"></a>tileCountUpToTier</h3><div class=CBody><p>{Array(Integer)} Number of tiles up to the given tier of pyramid.</p><ul><li>filled during Zoomify pyramid initialization.</li></ul></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.tierSizeInTiles"></a>tierSizeInTiles</h3><div class=CBody><p>{Array(<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt1', 'link12')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>)} Size (in tiles) for each tier of pyramid.</p><ul><li>filled during Zoomify pyramid initialization.</li></ul></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.tierSizeInTiles"></a>tierSizeInTiles</h3><div class=CBody><p>{Array(<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>)} Size (in tiles) for each tier of pyramid.</p><ul><li>filled during Zoomify pyramid initialization.</li></ul></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.tierImageSize"></a>tierImageSize</h3><div class=CBody><p>{Array(<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link13 onMouseOver="ShowTip(event, 'tt1', 'link13')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>)} Image size in pixels for each pyramid tier.</p><ul><li>filled during Zoomify pyramid initialization.</li></ul></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.tierImageSize"></a>tierImageSize</h3><div class=CBody><p>{Array(<a href="../BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt1', 'link12')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>)} Image size in pixels for each pyramid tier.</p><ul><li>filled during Zoomify pyramid initialization.</li></ul></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.OpenLayers.Layer.Zoomify"></a>OpenLayers.<wbr>Layer.<wbr>Zoomify</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} A name for the layer.</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} - Relative or absolute path to the image or more [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.OpenLayers.Layer.Zoomify"></a>OpenLayers.<wbr>Layer.<wbr>Zoomify</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>{String} A name for the layer.</td></tr><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} - Relative or absolute path to the image or more [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.initializeZoomify"></a>initializeZoomify</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initializeZoomify: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.initializeZoomify"></a>initializeZoomify</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initializeZoomify: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.getURL"></a>getURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getURL: function (</td><td class="PParameter  prettyprint " nowrap>bounds</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.getImageSize"></a>getImageSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getImageSize: function()</td></tr></table></blockquote><p>getImageSize returns size for a particular tile.  If bounds are given as first argument, size is calculated (bottom-right tiles are non square).</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>When [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.calculateGridLayout"></a>calculateGridLayout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateGridLayout: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>o [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Zoomify.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>When [...]
 
 </div><!--Content-->
 
@@ -55,15 +53,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([19, 20, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([22, 23, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initializeZoomify: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ta [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>initializeZoomify: function(</td><td class="PParameter  prettyprint " nowrap>size</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ta [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Map-js.html b/doc/devdocs/files/OpenLayers/Map-js.html
index e8917b4..52ce67f 100644
--- a/doc/devdocs/files/OpenLayers/Map-js.html
+++ b/doc/devdocs/files/OpenLayers/Map-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Map - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Java [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Map"></a>OpenLayers.Map</h1><div class=CBody><p>Instances of OpenLayers.Map are interactive maps embedded in a web page.  Create a new map with the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link90 onMouseOver="ShowTip(event, 'tt81', 'link90')" onMouseOut="HideTip('tt81')">OpenLayers.Map</a> constructor.</p><p>On their own maps do not provide much functionality [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Map"></a>OpenLayers.Map</h1><div class=CBody><p>Instances of OpenLayers.Map are interactive maps embedded in a web page.  Create a new map with the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link94 onMouseOver="ShowTip(event, 'tt85', 'link94')" onMouseOut="HideTip('tt85')">OpenLayers.Map</a> constructor.</p><p>On their own maps do not provide much functionality [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Constants"></a>Constants</h3></div></div>
 
@@ -19,37 +19,37 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">map.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of this [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">map.events.register(type, obj, listener);</pre></blockquote><p>Listeners will be called with a reference to an event object.   The properties of this [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.id"></a>id</h3><div class=CBody><p>{String} Unique identifier for the map</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.fractionalZoom"></a>fractionalZoom</h3><div class=CBody><p>{Boolean} For a base layer that supports it, allow the map resolution to be set to a value between one of the values in the resolutions array.   Default is false.</p><p>When fractionalZoom is set to true, it is possible to zoom to an arbitrary extent.   This requires a base layer from a source that supports requests for arbitrary extents ( [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.fractionalZoom"></a>fractionalZoom</h3><div class=CBody><p>{Boolean} For a base layer that supports it, allow the map resolution to be set to a value between one of the values in the resolutions array.   Default is false.</p><p>When fractionalZoom is set to true, it is possible to zoom to an arbitrary extent.   This requires a base layer from a source that supports requests for arbitrary extents ( [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} An events object that handles all events on the map</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.allOverlays"></a>allOverlays</h3><div class=CBody><p>{Boolean} Allow the map to function with “overlays” only.   Defaults to false.   If true, the lowest layer in the draw order will act as the base layer.   In addition, if set to true, all layers will have isBaseLayer set to false when they are added to the map.</p><h4 class=CHeading>Note</h4><p>If you set map.allOverlays to true [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.allOverlays"></a>allOverlays</h3><div class=CBody><p>{Boolean} Allow the map to function with “overlays” only.   Defaults to false.   If true, the lowest layer in the draw order will act as the base layer.   In addition, if set to true, all layers will have isBaseLayer set to false when they are added to the map.</p><h4 class=CHeading>Note</h4><p>If you set map.allOverlays to true [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.div"></a>div</h3><div class=CBody><p>{DOMElement|String} The element that contains the map (or an id for that element).   If the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link96 onMouseOver="ShowTip(event, 'tt81', 'link96')" onMouseOut="HideTip('tt81')">OpenLayers.Map</a> constructor is called with two arguments, this should be provided as the first argument.  Alternatively, t [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.div"></a>div</h3><div class=CBody><p>{DOMElement|String} The element that contains the map (or an id for that element).   If the <a href="#OpenLayers.Map.OpenLayers.Map" class=LConstructor id=link101 onMouseOver="ShowTip(event, 'tt85', 'link101')" onMouseOut="HideTip('tt85')">OpenLayers.Map</a> constructor is called with two arguments, this should be provided as the first argument.  Alternatively, [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.dragging"></a>dragging</h3><div class=CBody><p>{Boolean} The map is currently being dragged.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.size"></a>size</h3><div class=CBody><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link101 onMouseOver="ShowTip(event, 'tt1', 'link101')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} Size of the main div (this.div)</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.size"></a>size</h3><div class=CBody><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link106 onMouseOver="ShowTip(event, 'tt1', 'link106')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} Size of the main div (this.div)</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.viewPortDiv"></a>viewPortDiv</h3><div class=CBody><p>{HTMLDivElement} The element that represents the map viewport</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.layerContainerOrigin"></a>layerContainerOrigin</h3><div class=CBody><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link102 onMouseOver="ShowTip(event, 'tt2', 'link102')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} The lonlat at which the later container was re-initialized (on-zoom)</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.layerContainerOrigin"></a>layerContainerOrigin</h3><div class=CBody><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link107 onMouseOver="ShowTip(event, 'tt2', 'link107')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} The lonlat at which the later container was re-initialized (on-zoom)</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.layerContainerDiv"></a>layerContainerDiv</h3><div class=CBody><p>{HTMLDivElement} The element that contains the layers.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.layers"></a>layers</h3><div class=CBody><p>{Array(<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>)} Ordered list of layers in the map</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.controls"></a>controls</h3><div class=CBody><p>{Array(<a href="Control-js.html#OpenLayers.Control" class=LClass id=link103 onMouseOver="ShowTip(event, 'tt3', 'link103')" onMouseOut="HideTip('tt3')">OpenLayers.Control</a>)} List of controls associated with the map.</p><p>If not provided in the map options at construction, the map will by default be given the following controls if present in the build:</p><ul [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.controls"></a>controls</h3><div class=CBody><p>{Array(<a href="Control-js.html#OpenLayers.Control" class=LClass id=link108 onMouseOver="ShowTip(event, 'tt3', 'link108')" onMouseOut="HideTip('tt3')">OpenLayers.Control</a>)} List of controls associated with the map.</p><p>If not provided in the map options at construction, the map will by default be given the following controls if present in the build:</p><ul [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.popups"></a>popups</h3><div class=CBody><p>{Array(<a href="Popup-js.html#OpenLayers.Popup" class=LClass id=link110 onMouseOver="ShowTip(event, 'tt4', 'link110')" onMouseOut="HideTip('tt4')">OpenLayers.Popup</a>)} List of popups associated with the map</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.popups"></a>popups</h3><div class=CBody><p>{Array(<a href="Popup-js.html#OpenLayers.Popup" class=LClass id=link115 onMouseOver="ShowTip(event, 'tt4', 'link115')" onMouseOut="HideTip('tt4')">OpenLayers.Popup</a>)} List of popups associated with the map</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.baseLayer"></a>baseLayer</h3><div class=CBody><p>{<a href="Layer-js.html#OpenLayers.Layer" class=LClass >OpenLayers.Layer</a>} The currently selected base layer.   This determines min/max zoom level, projection, etc.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.center"></a>center</h3><div class=CBody><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link111 onMouseOver="ShowTip(event, 'tt2', 'link111')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} The current center of the map</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.center"></a>center</h3><div class=CBody><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link116 onMouseOver="ShowTip(event, 'tt2', 'link116')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} The current center of the map</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.resolution"></a>resolution</h3><div class=CBody><p>{Float} The resolution of the map.</p></div></div></div>
 
@@ -59,15 +59,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.options"></a>options</h3><div class=CBody><p>{Object} The options object passed to the class constructor.  Read-only.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link112 onMouseOver="ShowTip(event, 'tt1', 'link112')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} Set in the map options to override the default tile size for this map.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.tileSize"></a>tileSize</h3><div class=CBody><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link117 onMouseOver="ShowTip(event, 'tt1', 'link117')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} Set in the map options to override the default tile size for this map.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.projection"></a>projection</h3><div class=CBody><p>{String} Set in the map options to specify the default projection for layers added to this map.  When using a projection other than EPSG:4326 (CRS:84, Geographic) or EPSG:3857 (EPSG:900913, Web Mercator), also set maxExtent, maxResolution or resolutions.   Default is “EPSG:4326”.  Note that the projection of the map is usually det [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.projection"></a>projection</h3><div class=CBody><p>{String} Set in the map options to specify the default projection for layers added to this map.  When using a projection other than EPSG:4326 (CRS:84, Geographic) or EPSG:3857 (EPSG:900913, Web Mercator), also set maxExtent, maxResolution or resolutions.   Default is “EPSG:4326”.  Note that the projection of the map is usually det [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.units"></a>units</h3><div class=CBody><p>{String} The map units.   Possible values are ‘degrees’ (or ‘dd’), ‘m’, ‘ft’, ‘km’, ‘mi’, ‘inches’.   Normally taken from the projection.  Only required if both map and layers do not define a projection, or if they define a projection which does not define units</p></di [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.resolutions"></a>resolutions</h3><div class=CBody><p>{Array(Float)} A list of map resolutions (map units per pixel) in descending order.   If this is not set in the layer constructor, it will be set based on other resolution related properties (maxExtent, maxResolution, maxScale, etc.).</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Required if you are not displaying the whole world on a tile with the size specified in <a href="#OpenLayers.Map.tileSize" class=LProperty id=link115 onMouseOver="ShowTip(event, 'tt5', 'link115')" onMouseOut="HideTip('tt5')">tileSize</a>.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxResolution"></a>maxResolution</h3><div class=CBody><p>{Float} Required if you are not displaying the whole world on a tile with the size specified in <a href="#OpenLayers.Map.tileSize" class=LProperty id=link120 onMouseOver="ShowTip(event, 'tt5', 'link120')" onMouseOut="HideTip('tt5')">tileSize</a>.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minResolution"></a>minResolution</h3><div class=CBody><p>{Float}</p></div></div></div>
 
@@ -75,7 +75,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minScale"></a>minScale</h3><div class=CBody><p>{Float}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the map.   Defaults to the whole world in decimal degrees (-180, -90, 180, 90).   Specify a different extent in the map options if you are not using a geographic projection and displaying the who [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.maxExtent"></a>maxExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The maximum extent for the map.  Default depends on projection; if this is one of those defined in OpenLayers.Projection.defaults (EPSG:4326 or web mercator), maxExtent will be set to the value defined there; else, defaults [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minExtent"></a>minExtent</h3><div class=CBody><p>{<OpenLayers.Bounds>|Array} If provided as an array, the array should consist of four values (left, bottom, right, top).  The minimum extent for the map.   Defaults to null.</p></div></div></div>
 
@@ -85,19 +85,31 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.theme"></a>theme</h3><div class=CBody><p>{String} Relative path to a CSS file from which to load theme styles.  Specify null in the map options (e.g.  {theme: null}) if you want to get cascading style declarations - by putting links to stylesheets or style declarations directly in your page.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link118 onMouseOver="ShowTip(event, 'tt6', 'link118')" onMouseOut="HideTip('tt6')">OpenLayers.Projection</a>} Requires proj4js support for projections other than EPSG:4326 or EPSG:900913/EPSG:3857.  Projection used by several controls to display data to user.  If thi [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.displayProjection"></a>displayProjection</h3><div class=CBody><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link123 onMouseOver="ShowTip(event, 'tt6', 'link123')" onMouseOut="HideTip('tt6')">OpenLayers.Projection</a>} Requires proj4js support for projections other than EPSG:4326 or EPSG:900913/EPSG:3857.  Projection used by several controls to display data to user.  If thi [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.fallThrough"></a>fallThrough</h3><div class=CBody><p>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  (#457) Default is to fall through.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.tileManager"></a>tileManager</h3><div class=CBody><p>{<OpenLayers.TileManager>|Object} By default, and if the build contains TileManager.js, the map will use the TileManager to queue image requests and to cache tile image elements.  To create a map without a TileManager configure the map with tileManager: null.  To create a TileManager with non-default options, supply the options instead or  [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panTween"></a>panTween</h3><div class=CBody><p>{<a href="Tween-js.html#OpenLayers.Tween" class=LClass >OpenLayers.Tween</a>} Animated panning tween object, see panTo()</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.fallThrough"></a>fallThrough</h3><div class=CBody><p>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  (#457) Default is to swallow.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.autoUpdateSize"></a>autoUpdateSize</h3><div class=CBody><p>{Boolean} Should OpenLayers automatically update the size of the map when the resize event is fired.  Default is true.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link125 onMouseOver="ShowTip(event, 'tt7', 'link125')" onMouseOut="HideTip('tt7')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for th [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.eventListeners"></a>eventListeners</h3><div class=CBody><p>{Object} If set as an option at construction, the eventListeners object will be registered with <a href="Events-js.html#OpenLayers.Events.on" class=LFunction id=link119 onMouseOver="ShowTip(event, 'tt7', 'link119')" onMouseOut="HideTip('tt7')">OpenLayers.Events.on</a>.   Object structure must be a listeners object as shown in the example for th [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panTween"></a>panTween</h3><div class=CBody><p>{<a href="Tween-js.html#OpenLayers.Tween" class=LClass >OpenLayers.Tween</a>} Animated panning tween object, see panTo()</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panMethod"></a>panMethod</h3><div class=CBody><p>{Function} The Easing function to be used for tweening.   Default is OpenLayers.Easing.Expo.easeOut.  Setting this to ‘null’ turns off animated panning.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panDuration"></a>panDuration</h3><div class=CBody><p>{Integer} The number of steps to be passed to the OpenLayers.Tween.start() method when the map is panned.  Default is 50.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.paddingForPopups"></a>paddingForPopups</h3><div class=CBody><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link120 onMouseOver="ShowTip(event, 'tt8', 'link120')" onMouseOut="HideTip('tt8')">OpenLayers.Bounds</a>} Outside margin of the popup.  Used to prevent the popup from getting too close to the map border.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomTween"></a>zoomTween</h3><div class=CBody><p>{<a href="Tween-js.html#OpenLayers.Tween" class=LClass >OpenLayers.Tween</a>} Animated zooming tween object, see zoomTo()</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomMethod"></a>zoomMethod</h3><div class=CBody><p>{Function} The Easing function to be used for tweening.   Default is OpenLayers.Easing.Quad.easeOut.  Setting this to ‘null’ turns off animated zooming.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomDuration"></a>zoomDuration</h3><div class=CBody><p>{Integer} The number of steps to be passed to the OpenLayers.Tween.start() method when the map is zoomed.  Default is 20.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.paddingForPopups"></a>paddingForPopups</h3><div class=CBody><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link126 onMouseOver="ShowTip(event, 'tt8', 'link126')" onMouseOut="HideTip('tt8')">OpenLayers.Bounds</a>} Outside margin of the popup.  Used to prevent the popup from getting too close to the map border.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.layerContainerOriginPx"></a>layerContainerOriginPx</h3><div class=CBody><p>{Object} Cached object representing the layer container origin (in pixels).</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.minPx"></a>minPx</h3><div class=CBody><p>{Object} An object with a ‘x’ and ‘y’ values that is the lower left of maxExtent in viewport pixel space.  Used to verify in moveByPx that the new location we’re moving to is valid.  It is also used in the getLonLatFromViewPortPx function of Layer.</p></div></div></div>
 
@@ -105,7 +117,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.OpenLayers.Map"></a>OpenLayers.Map</h3><div class=CBody><p>Constructor for a new OpenLayers.Map instance.   There are two possible ways to call the map constructor.   See the examples below.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>div</td><td class=CDLDescription>{DOMElement|String}  The element or id of an e [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.OpenLayers.Map"></a>OpenLayers.Map</h3><div class=CBody><p>Constructor for a new OpenLayers.Map instance.   There are two possible ways to call the map constructor.   See the examples below.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>div</td><td class=CDLDescription>{DOMElement|String}  The element or id of an e [...]
 var map = new OpenLayers.Map("map1");
 
 // create a map with non-default options in an element with id "map2"
@@ -146,7 +158,7 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.setOptions"></a>setOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOptions: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getTileSize"></a>getTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileSize: function()</td></tr></table></blockquote><p>Get the tile size for the map</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link127 onMouseOver="ShowTip(event, 'tt1', 'link127')" onMouseOut="H [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getTileSize"></a>getTileSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getTileSize: function()</td></tr></table></blockquote><p>Get the tile size for the map</p><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link133 onMouseOver="ShowTip(event, 'tt1', 'link133')" onMouseOut="H [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getBy"></a>getBy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getBy: function(</td><td class="PParameter  prettyprint " nowrap>array,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property,</td></tr><tr><td></td><td class="PParameter  [...]
 
@@ -156,9 +168,9 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayersByClass"></a>getLayersByClass</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayersByClass: function(</td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsBy"></a>getControlsBy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsBy: function(</td><td class="PParameter  prettyprint " nowrap>property,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsBy"></a>getControlsBy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsBy: function(</td><td class="PParameter  prettyprint " nowrap>property,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfter [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsByClass"></a>getControlsByClass</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsByClass: function(</td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControlsByClass"></a>getControlsByClass</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControlsByClass: function(</td><td class="PParameter  prettyprint " nowrap>match</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayer"></a>getLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayer: function(</td><td class="PParameter  prettyprint " nowrap>id</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Get a lay [...]
 
@@ -182,63 +194,65 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.setBaseLayer"></a>setBaseLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBaseLayer: function(</td><td class="PParameter  prettyprint " nowrap>newBaseLayer</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControl"></a>addControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControl: function (</td><td class="PParameter  prettyprint " nowrap>control,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters   [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControl"></a>addControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControl: function (</td><td class="PParameter  prettyprint " nowrap>control,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters   [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControls"></a>addControls</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControls: function (</td><td class="PParameter  prettyprint " nowrap>controls,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixels</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControls"></a>addControls</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControls: function (</td><td class="PParameter  prettyprint " nowrap>controls,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>pixels</td><td class="PAfterPara [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControlToMap"></a>addControlToMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControlToMap: function (</td><td class="PParameter  prettyprint " nowrap>control,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAf [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addControlToMap"></a>addControlToMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addControlToMap: function (</td><td class="PParameter  prettyprint " nowrap>control,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAf [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControl"></a>getControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControl: function (</td><td class="PParameter  prettyprint " nowrap>id</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 c [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getControl"></a>getControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getControl: function (</td><td class="PParameter  prettyprint " nowrap>id</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 c [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removeControl"></a>removeControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeControl: function (</td><td class="PParameter  prettyprint " nowrap>control</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removeControl"></a>removeControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeControl: function (</td><td class="PParameter  prettyprint " nowrap>control</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bl [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addPopup"></a>addPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addPopup: function(</td><td class="PParameter  prettyprint " nowrap>popup,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>exclusive</td><td class="PAfterParameters  pr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.addPopup"></a>addPopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addPopup: function(</td><td class="PParameter  prettyprint " nowrap>popup,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>exclusive</td><td class="PAfterParameters  pr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removePopup"></a>removePopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removePopup: function(</td><td class="PParameter  prettyprint " nowrap>popup</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.removePopup"></a>removePopup</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removePopup: function(</td><td class="PParameter  prettyprint " nowrap>popup</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link140 onMouseOver="ShowTip(event, 'tt1', 'link140')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} An <a href= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getSize"></a>getSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getSize: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link146 onMouseOver="ShowTip(event, 'tt1', 'link146')" onMouseOut="HideTip('tt1')">OpenLayers.Size</a>} An <a href= [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.updateSize"></a>updateSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">updateSize: function()</td></tr></table></blockquote><p>This function should be called by any external code which dynamically changes the size of the map div (because mozilla wont let us catch the “onresize” for an element)</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCurrentSize"></a>getCurrentSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCurrentSize: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link142 onMouseOver="ShowTip(event, 'tt1', 'link142')" onMouseOut="HideTip('tt1')">OpenLayers.S [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCurrentSize"></a>getCurrentSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCurrentSize: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Size-js.html#OpenLayers.Size" class=LClass id=link148 onMouseOver="ShowTip(event, 'tt1', 'link148')" onMouseOut="HideTip('tt1')">OpenLayers.S [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.calculateBounds"></a>calculateBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateBounds: function(</td><td class="PParameter  prettyprint " nowrap>center,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>resolution</td><td clas [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.calculateBounds"></a>calculateBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>calculateBounds: function(</td><td class="PParameter  prettyprint " nowrap>center,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>resolution</td><td clas [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCenter"></a>getCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenter: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link146 onMouseOver="ShowTip(event, 'tt2', 'link146')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCenter"></a>getCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCenter: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link152 onMouseOver="ShowTip(event, 'tt2', 'link152')" onMouseOut="HideTip('tt2')">OpenLayers.LonLat</a>} [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCachedCenter"></a>getCachedCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCachedCenter: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link147 onMouseOver="ShowTip(event, 'tt2', 'link147')" onMouseOut="HideTip('tt2')">OpenL [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getCachedCenter"></a>getCachedCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCachedCenter: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/LonLat-js.html#OpenLayers.LonLat" class=LClass id=link153 onMouseOver="ShowTip(event, 'tt2', 'link153')" onMouseOut="HideTip('tt2')">OpenL [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoom"></a>getZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getZoom: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Integer}</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.pan"></a>pan</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>pan: function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy,</td></tr><tr><td></td><td class="PParameter  prettyprint "  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panTo"></a>panTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>panTo: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Allows user to [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.panTo"></a>panTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>panTo: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Allows user to [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.setCenter"></a>setCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setCenter: function(</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoom,</td></tr><tr><td></td><td class="PP [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.moveByPx"></a>moveByPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveByPx: function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy</td><td class="PAfterParameters  prettyprint  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.adjustZoom"></a>adjustZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>adjustZoom: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.adjustZoom"></a>adjustZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>adjustZoom: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4  [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMinZoom"></a>getMinZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMinZoom: function()</td></tr></table></blockquote><p>Returns the minimum zoom level for the current map view.  If the base layer is configured with <wrapDateLine> set to true, this will be the first zoom level that shows no more than one world wi [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo: function(</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoom,</td></tr><tr><td></td><td class="PParameter  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo: function(</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoom,</td></tr><tr><td></td><td class="PParameter  [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.centerLayerContainer"></a>centerLayerContainer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>centerLayerContainer: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.centerLayerContainer"></a>centerLayerContainer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>centerLayerContainer: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.isValidZoomLevel"></a>isValidZoomLevel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>isValidZoomLevel: function(</td><td class="PParameter  prettyprint " nowrap>zoomLevel</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.isValidLonLat"></a>isValidLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>isValidLonLat: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bloc [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.isValidLonLat"></a>isValidLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>isValidLonLat: function(</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></bloc [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getProjection"></a>getProjection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getProjection: function()</td></tr></table></blockquote><p>This method returns a string representing the projection.  In the case of projection support, this will be the srsCode which is loaded -- otherwise it will simply be the string value that wa [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getProjectionObject"></a>getProjectionObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getProjectionObject: function()</td></tr></table></blockquote><p>Returns the projection obect from the baselayer.</p><h4 class=CHeading>Returns</h4><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link153 onMouseOver="Sh [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getProjectionObject"></a>getProjectionObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getProjectionObject: function()</td></tr></table></blockquote><p>Returns the projection obect from the baselayer.</p><h4 class=CHeading>Returns</h4><p>{<a href="Projection-js.html#OpenLayers.Projection" class=LClass id=link161 onMouseOver="Sh [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMaxResolution"></a>getMaxResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getMaxResolution: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} The Map’s Maximum Resolution</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMaxExtent: function (</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getMaxExtent"></a>getMaxExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMaxExtent: function (</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getNumZoomLevels"></a>getNumZoomLevels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getNumZoomLevels: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Integer} The total number of zoom levels that can be displayed by the current baseLayer.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link155 onMouseOver="ShowTip(event, 'tt8', 'link155')" onMouseOut="HideTip('tt8')">OpenLayers.Bounds</a>} [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getExtent"></a>getExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getExtent: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{<a href="BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link163 onMouseOver="ShowTip(event, 'tt8', 'link163')" onMouseOut="HideTip('tt8')">OpenLayers.Bounds</a>} [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getResolution"></a>getResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getResolution: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The current resolution of the map.  If no baselayer is set, returns null.</p></div></div></div>
 
@@ -246,13 +260,13 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getScale"></a>getScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getScale: function ()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The current scale denominator of the map.  If no baselayer is set, returns null.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function (</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cla [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomForExtent"></a>getZoomForExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForExtent: function (</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td cla [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getResolutionForZoom"></a>getResolutionForZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getResolutionForZoom: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomForResolution"></a>getZoomForResolution</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomForResolution: function(</td><td class="PParameter  prettyprint " nowrap>resolution,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>clos [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomTo"></a>zoomTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomTo: function(</td><td class="PParameter  prettyprint " nowrap>zoom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Zoom to a spe [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomTo"></a>zoomTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomTo: function(</td><td class="PParameter  prettyprint " nowrap>zoom,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>xy</td><td class="PAfterParameters  prettyprint "now [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomIn"></a>zoomIn</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">zoomIn: function()</td></tr></table></blockquote></div></div></div>
 
@@ -264,23 +278,27 @@ var map = new OpenLayers.Map({
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.zoomToScale"></a>zoomToScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomToScale: function(</td><td class="PParameter  prettyprint " nowrap>scale,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>closest</td><td class="PAfterParamet [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromViewPortPx"></a>getLonLatFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromViewPortPx: function (</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromViewPortPx"></a>getLonLatFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromViewPortPx: function (</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getZoomTargetCenter"></a>getZoomTargetCenter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getZoomTargetCenter: function (</td><td class="PParameter  prettyprint " nowrap>xy,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>resolution</td [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLonLat"></a>getViewPortPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromPixel"></a>getLonLatFromPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromPixel: function (</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromPixel"></a>getLonLatFromPixel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromPixel: function (</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getPixelFromLonLat"></a>getPixelFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPixelFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getPixelFromLonLat"></a>getPixelFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getPixelFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getGeodesicPixelSize"></a>getGeodesicPixelSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getGeodesicPixelSize: function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getGeodesicPixelSize"></a>getGeodesicPixelSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getGeodesicPixelSize: function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLayerPx"></a>getViewPortPxFromLayerPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLayerPx:function(</td><td class="PParameter  prettyprint " nowrap>layerPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getViewPortPxFromLayerPx"></a>getViewPortPxFromLayerPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getViewPortPxFromLayerPx:function(</td><td class="PParameter  prettyprint " nowrap>layerPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromViewPortPx"></a>getLayerPxFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromViewPortPx:function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromViewPortPx"></a>getLayerPxFromViewPortPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromViewPortPx:function(</td><td class="PParameter  prettyprint " nowrap>viewPortPx</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromLayerPx"></a>getLonLatFromLayerPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromLayerPx: function (</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLonLatFromLayerPx"></a>getLonLatFromLayerPx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLonLatFromLayerPx: function (</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromLonLat"></a>getLayerPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.getLayerPxFromLonLat"></a>getLayerPxFromLonLat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getLayerPxFromLonLat: function (</td><td class="PParameter  prettyprint " nowrap>lonlat</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.applyTransform"></a>applyTransform</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>applyTransform: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>y,</td></tr><tr><td></td><td cl [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Map.Constants"></a>Constants</h3></div></div>
 
@@ -294,15 +312,15 @@ var map = new OpenLayers.Map({
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt3"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt4"><div class=CClass>A popup is a small div that can opened and closed on the map. </div></div><div class=CToolTip id="tt5"><div clas [...]
+<div class=CToolTip id="tt1"><div class=CClass>Instances of this class represent a width/height pair</div></div><div class=CToolTip id="tt2"><div class=CClass>This class represents a longitude and latitude pair</div></div><div class=CToolTip id="tt3"><div class=CClass>Controls affect the display or behavior of the map. </div></div><div class=CToolTip id="tt4"><div class=CClass>A popup is a small div that can opened and closed on the map. </div></div><div class=CToolTip id="tt5"><div clas [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Marker-js.html b/doc/devdocs/files/OpenLayers/Marker-js.html
index b223e3e..e368dca 100644
--- a/doc/devdocs/files/OpenLayers/Marker-js.html
+++ b/doc/devdocs/files/OpenLayers/Marker-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Marker - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -64,10 +64,10 @@ markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(0,0),icon.clone())
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([21, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([24, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Marker/Box-js.html b/doc/devdocs/files/OpenLayers/Marker/Box-js.html
index c02cd01..73de8bd 100644
--- a/doc/devdocs/files/OpenLayers/Marker/Box-js.html
+++ b/doc/devdocs/files/OpenLayers/Marker/Box-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Marker.Box - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -29,7 +29,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Marker.Box.setBorder"></a>setBorder</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBorder: function (</td><td class="PParameter  prettyprint " nowrap>color,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>width</td><td class="PAfterParamet [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Marker.Box.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sz</td><td class="PAfterParameters  prettyprint "nowr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Marker.Box.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>sz</td><td class="PAfterParameters  prettyprint "nowr [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Marker.Box.onScreen"></a>onScreen</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onScreen:function()</td></tr></table></blockquote><h4 class=CHeading>Rreturn</h4><p>{Boolean} Whether or not the marker is currently visible on screen.</p></div></div></div>
 
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([21, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([24, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Popup-js.html b/doc/devdocs/files/OpenLayers/Popup-js.html
index 89e99aa..006dbcd 100644
--- a/doc/devdocs/files/OpenLayers/Popup-js.html
+++ b/doc/devdocs/files/OpenLayers/Popup-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -139,10 +139,10 @@ map.addPopup(popup);</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Popup/Anchored-js.html b/doc/devdocs/files/OpenLayers/Popup/Anchored-js.html
index 73cd9fc..811279f 100644
--- a/doc/devdocs/files/OpenLayers/Popup/Anchored-js.html
+++ b/doc/devdocs/files/OpenLayers/Popup/Anchored-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.Anchored - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -47,10 +47,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Popup/AnchoredBubble-js.html b/doc/devdocs/files/OpenLayers/Popup/AnchoredBubble-js.html
deleted file mode 100644
index 3c55853..0000000
--- a/doc/devdocs/files/OpenLayers/Popup/AnchoredBubble-js.html
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.AnchoredBubble - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.52 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h1><div class=CBody><p>This class is <b>deprecated</b>.  Use {<a href="Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>} and round corners using CSS3’s border-radius property.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="Anchored-js.html#OpenLayers.Popup.An [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.rounded"></a>rounded</h3><div class=CBody><p>{Boolean} Has the popup been rounded yet?</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constructor"></a>Constructor</h3></div></div>
-
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescription>{<a href="../BaseTypes/LonLat-js.html#OpenLayers.LonLat"  [...]
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Functions"></a>Functions</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 cla [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.updateRelativePosition"></a>updateRelativePosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">updateRelativePosition: function()</td></tr></table></blockquote><p>The popup has been moved to a new relative location, in which case we will want to re-do the rico corners.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setSize"></a>setSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setSize:function(</td><td class="PParameter  prettyprint " nowrap>contentSize</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setBackgroundColor"></a>setBackgroundColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBackgroundColor:function(</td><td class="PParameter  prettyprint " nowrap>color</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity:function(</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setBorder"></a>setBorder</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBorder:function(</td><td class="PParameter  prettyprint " nowrap>border</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setRicoCorners"></a>setRicoCorners</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">setRicoCorners:function()</td></tr></table></blockquote><p>Update RICO corners according to the popup’s current relative postion.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.getCornersToRound"></a>getCornersToRound</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCornersToRound:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} The proper corners string (“tr tl bl br”) for rico to round.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constants"></a>Constants</h3></div></div>
-
-<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.CORNER_SIZE"></a>CORNER_SIZE</h3><div class=CBody><p>{Integer} 5.  Border space for the RICO corners.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 ce [...]
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Popup/Framed-js.html b/doc/devdocs/files/OpenLayers/Popup/Framed-js.html
index 50d377b..1adf2bd 100644
--- a/doc/devdocs/files/OpenLayers/Popup/Framed-js.html
+++ b/doc/devdocs/files/OpenLayers/Popup/Framed-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.Framed - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Popup/FramedCloud-js.html b/doc/devdocs/files/OpenLayers/Popup/FramedCloud-js.html
index 60dca4b..462ab5d 100644
--- a/doc/devdocs/files/OpenLayers/Popup/FramedCloud-js.html
+++ b/doc/devdocs/files/OpenLayers/Popup/FramedCloud-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Popup.FramedCloud - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([22, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([25, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Projection-js.html b/doc/devdocs/files/OpenLayers/Projection-js.html
index 6d1b5ab..fd669b7 100644
--- a/doc/devdocs/files/OpenLayers/Projection-js.html
+++ b/doc/devdocs/files/OpenLayers/Projection-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Projection - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -56,10 +56,10 @@ OpenLayers.Projection.addTransform("EPSG:900913", "EPSG:3857&quot
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol-js.html b/doc/devdocs/files/OpenLayers/Protocol-js.html
index c44665d..2aee29f 100644
--- a/doc/devdocs/files/OpenLayers/Protocol-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -81,10 +81,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/CSW-js.html b/doc/devdocs/files/OpenLayers/Protocol/CSW-js.html
index de44df7..18b40a2 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/CSW-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/CSW-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.CSW - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html b/doc/devdocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html
index 8577b91..c2943f5 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/CSW/v2_0_2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.CSW.v2_0_2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/HTTP-js.html b/doc/devdocs/files/OpenLayers/Protocol/HTTP-js.html
index 41de594..8a1c34e 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/HTTP-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/HTTP-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.HTTP - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -77,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/SOS-js.html b/doc/devdocs/files/OpenLayers/Protocol/SOS-js.html
index e43ea07..6350dde 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/SOS-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/SOS-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/SOS.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="Con [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/SOS.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="Con [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html
index ef05416..97cd3a8 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/SOS/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.SOS.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/Script-js.html b/doc/devdocs/files/OpenLayers/Protocol/Script-js.html
index 52c0b7c..8fc7c4d 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/Script-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/Script-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.Script - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -69,10 +69,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([23, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([26, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/WFS-js.html b/doc/devdocs/files/OpenLayers/Protocol/WFS-js.html
index a4e0346..e809ec5 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/WFS-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/WFS-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/WFS/v1-js.html b/doc/devdocs/files/OpenLayers/Protocol/WFS/v1-js.html
index 26cf7d7..0b3f100 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/WFS/v1-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/WFS/v1-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS.v1 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();p [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Protocol.WFS.v1"></a>OpenLayers.<wbr>Protocol.<wbr>WFS.v1</h1><div class=CBody><p>Abstract class for for v1.0.0 and v1.1.0 protocol.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../Protocol-js.html#OpenLayers.Protocol" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">OpenLayers.Protocol</a></li></ul><!--START_ND_SUMMARY-- [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Protocol.WFS.v1"></a>OpenLayers.<wbr>Protocol.<wbr>WFS.v1</h1><div class=CBody><p>Abstract class for for v1.0.0 and v1.1.0 protocol.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../../Protocol-js.html#OpenLayers.Protocol" class=LClass id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">OpenLayers.Protocol</a></li></ul><!--START_ND_SUMMARY-- [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.WFS.v1.Properties"></a>Properties</h3></div></div>
 
@@ -25,6 +25,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.WFS.v1.geometryName"></a>geometryName</h3><div class=CBody><p>{String} Name of the geometry attribute for features.   Default is “the_geom” for WFS <a href="#OpenLayers.Protocol.WFS.v1.version" class=LProperty id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">version</a> 1.0, and null for higher versions.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.WFS.v1.maxFeatures"></a>maxFeatures</h3><div class=CBody><p>{Integer} Optional maximum number of features to retrieve.</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.WFS.v1.schema"></a>schema</h3><div class=CBody><p>{String} Optional schema location that will be included in the schemaLocation attribute value.   Note that the feature type schema is required for a strict XML validator (on transactions with an insert for example), but is <b>not</b> required by the WFS specification (since the server is supposed to know about feature type schemas).</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.WFS.v1.featurePrefix"></a>featurePrefix</h3><div class=CBody><p>{String} Namespace alias for feature type.   Default is “feature”.</p></div></div></div>
@@ -79,10 +81,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html b/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html
index c6766d4..f2af7ea 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_0_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS.v1_0_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html b/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html
index a8fe2c3..883d45b 100644
--- a/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html
+++ b/doc/devdocs/files/OpenLayers/Protocol/WFS/v1_1_0-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Protocol.WFS.v1_1_0 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -27,10 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([24, 25, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([27, 28, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Renderer-js.html b/doc/devdocs/files/OpenLayers/Renderer-js.html
index c98b213..6053586 100644
--- a/doc/devdocs/files/OpenLayers/Renderer-js.html
+++ b/doc/devdocs/files/OpenLayers/Renderer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -91,10 +91,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Renderer/Canvas-js.html b/doc/devdocs/files/OpenLayers/Renderer/Canvas-js.html
index cb40875..894a402 100644
--- a/doc/devdocs/files/OpenLayers/Renderer/Canvas-js.html
+++ b/doc/devdocs/files/OpenLayers/Renderer/Canvas-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer.Canvas - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -91,10 +91,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Renderer/Elements-js.html b/doc/devdocs/files/OpenLayers/Renderer/Elements-js.html
index efd6b07..c459ff4 100644
--- a/doc/devdocs/files/OpenLayers/Renderer/Elements-js.html
+++ b/doc/devdocs/files/OpenLayers/Renderer/Elements-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.ElementsIndexer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -139,10 +139,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Renderer/SVG-js.html b/doc/devdocs/files/OpenLayers/Renderer/SVG-js.html
index 1662fad..65209b0 100644
--- a/doc/devdocs/files/OpenLayers/Renderer/SVG-js.html
+++ b/doc/devdocs/files/OpenLayers/Renderer/SVG-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer.SVG - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Renderer.SVG"></a>OpenLayers.<wbr>Renderer.SVG</h1><div class=CBody><h4 class=CHeading>Inherits</h4><ul><li><a href="Elements-js.html#OpenLayers.Renderer.Elements" class=LClass id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">OpenLayers.Renderer.Elements</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Renderer.SVG"></a>OpenLayers.<wbr>Renderer.SVG</h1><div class=CBody><h4 class=CHeading>Inherits</h4><ul><li><a href="Elements-js.html#OpenLayers.Renderer.Elements" class=LClass id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">OpenLayers.Renderer.Elements</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG.Properties"></a>Properties</h3></div></div>
 
@@ -97,7 +97,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG.OpenLayers.Renderer.SVG.preventDefault"></a>OpenLayers.<wbr>Renderer.<wbr>SVG.<wbr>preventDefault</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Renderer.SVG.preventDefault = function(</td><td class="PParameter  prettyprint " nowrap>e</ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG.OpenLayers.Renderer.SVG.preventDefault"></a>OpenLayers.<wbr>Renderer.<wbr>SVG.<wbr>preventDefault</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Renderer.SVG.preventDefault = function(</td><td class="PParameter  prettyprint " nowrap>e</ [...]
 
 </div><!--Content-->
 
@@ -105,15 +105,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">supported: function()</td></tr></table></blockquote>{Boolean} Whether or not the browser supports the SVG renderer</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  pret [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">supported: function()</td></tr></table></blockquote>{Boolean} Whether or not the browser supports the SVG renderer</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  pret [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Renderer/VML-js.html b/doc/devdocs/files/OpenLayers/Renderer/VML-js.html
index 4e7e323..f5b867c 100644
--- a/doc/devdocs/files/OpenLayers/Renderer/VML-js.html
+++ b/doc/devdocs/files/OpenLayers/Renderer/VML-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Renderer.VML - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -83,10 +83,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([26, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([29, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Request-js.html b/doc/devdocs/files/OpenLayers/Request-js.html
index 9f33047..b95ffe7 100644
--- a/doc/devdocs/files/OpenLayers/Request-js.html
+++ b/doc/devdocs/files/OpenLayers/Request-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Request - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language= [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -49,10 +49,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([27, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([30, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Request/XMLHttpRequest-js.html b/doc/devdocs/files/OpenLayers/Request/XMLHttpRequest-js.html
index b2af621..f77dcaa 100644
--- a/doc/devdocs/files/OpenLayers/Request/XMLHttpRequest-js.html
+++ b/doc/devdocs/files/OpenLayers/Request/XMLHttpRequest-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Request.XMLHttpRequest - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();pretty [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -19,10 +19,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([27, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([30, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Rule-js.html b/doc/devdocs/files/OpenLayers/Rule-js.html
index 20cf4ea..d7d896d 100644
--- a/doc/devdocs/files/OpenLayers/Rule-js.html
+++ b/doc/devdocs/files/OpenLayers/Rule-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Rule - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/SingleFile-js.html b/doc/devdocs/files/OpenLayers/SingleFile-js.html
index 34ec07f..b5435c6 100644
--- a/doc/devdocs/files/OpenLayers/SingleFile-js.html
+++ b/doc/devdocs/files/OpenLayers/SingleFile-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/SingleFile.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLo [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/SingleFile.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLo [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -38,10 +38,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Spherical-js.html b/doc/devdocs/files/OpenLayers/Spherical-js.html
index 64f74f8..076419f 100644
--- a/doc/devdocs/files/OpenLayers/Spherical-js.html
+++ b/doc/devdocs/files/OpenLayers/Spherical-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Spherical - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy-js.html b/doc/devdocs/files/OpenLayers/Strategy-js.html
index 40b6140..1f2229f 100644
--- a/doc/devdocs/files/OpenLayers/Strategy-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/BBOX-js.html b/doc/devdocs/files/OpenLayers/Strategy/BBOX-js.html
index c4bf8bc..ab93f63 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/BBOX-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/BBOX-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.BBOX - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/Cluster-js.html b/doc/devdocs/files/OpenLayers/Strategy/Cluster-js.html
index 6dbdbb3..e4c2687 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/Cluster-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/Cluster-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Cluster - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/Filter-js.html b/doc/devdocs/files/OpenLayers/Strategy/Filter-js.html
index b04232e..72dd142 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/Filter-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/Filter-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Filter - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -43,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/Fixed-js.html b/doc/devdocs/files/OpenLayers/Strategy/Fixed-js.html
index 3108bc9..7704bcf 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/Fixed-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/Fixed-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Fixed - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint(); [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Strategy.Fixed"></a>OpenLayers.<wbr>Strategy.<wbr>Fixed</h1><div class=CBody><p>A simple strategy that requests features once and never requests new data.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Strategy-js.html#OpenLayers.Strategy" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Strategy</a></li></ul><!--STA [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Strategy.Fixed"></a>OpenLayers.<wbr>Strategy.<wbr>Fixed</h1><div class=CBody><p>A simple strategy that requests features once and never requests new data.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="../Strategy-js.html#OpenLayers.Strategy" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">OpenLayers.Strategy</a></li></ul><!--STA [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Strategy.Fixed.Properties"></a>Properties</h3></div></div>
 
@@ -29,7 +29,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Strategy.Fixed.load"></a>load</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>load: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Tells [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Strategy.Fixed.merge"></a>merge</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>merge: function(</td><td class="PParameter  prettyprint " nowrap>mapProjection,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>resp</td><td class="PAfterParameter [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Strategy.Fixed.merge"></a>merge</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>merge: function(</td><td class="PParameter  prettyprint " nowrap>resp</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Add a [...]
 
 </div><!--Content-->
 
@@ -37,15 +37,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote>Activate the strategy: load data or add listener to load when visible</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote>Dea [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">activate: function()</td></tr></table></blockquote>Activate the strategy: load data or add listener to load when visible</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">deactivate: function()</td></tr></table></blockquote>Dea [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/Paging-js.html b/doc/devdocs/files/OpenLayers/Strategy/Paging-js.html
index 8e83a18..e023e94 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/Paging-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/Paging-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Paging - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -55,10 +55,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/Refresh-js.html b/doc/devdocs/files/OpenLayers/Strategy/Refresh-js.html
index 234fa74..2811e76 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/Refresh-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/Refresh-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Refresh - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Strategy/Save-js.html b/doc/devdocs/files/OpenLayers/Strategy/Save-js.html
index 07f8b39..7eff844 100644
--- a/doc/devdocs/files/OpenLayers/Strategy/Save-js.html
+++ b/doc/devdocs/files/OpenLayers/Strategy/Save-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Strategy.Save - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();" [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([28, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([31, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Style-js.html b/doc/devdocs/files/OpenLayers/Style-js.html
index 27ee321..65abf2c 100644
--- a/doc/devdocs/files/OpenLayers/Style-js.html
+++ b/doc/devdocs/files/OpenLayers/Style-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Style - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -75,10 +75,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Style2-js.html b/doc/devdocs/files/OpenLayers/Style2-js.html
index 564ed02..d8cdf9c 100644
--- a/doc/devdocs/files/OpenLayers/Style2-js.html
+++ b/doc/devdocs/files/OpenLayers/Style2-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Style2 - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=J [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -45,10 +45,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/StyleMap-js.html b/doc/devdocs/files/OpenLayers/StyleMap-js.html
index 34f2219..762053c 100644
--- a/doc/devdocs/files/OpenLayers/StyleMap-js.html
+++ b/doc/devdocs/files/OpenLayers/StyleMap-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.StyleMap - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -37,10 +37,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Symbolizer-js.html b/doc/devdocs/files/OpenLayers/Symbolizer-js.html
index 13eddf8..0618de2 100644
--- a/doc/devdocs/files/OpenLayers/Symbolizer-js.html
+++ b/doc/devdocs/files/OpenLayers/Symbolizer-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -31,10 +31,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Symbolizer/Line-js.html b/doc/devdocs/files/OpenLayers/Symbolizer/Line-js.html
index a0387a3..9b3bf25 100644
--- a/doc/devdocs/files/OpenLayers/Symbolizer/Line-js.html
+++ b/doc/devdocs/files/OpenLayers/Symbolizer/Line-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Line - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Symbolizer/Point-js.html b/doc/devdocs/files/OpenLayers/Symbolizer/Point-js.html
index c4ed4fe..ceefd93 100644
--- a/doc/devdocs/files/OpenLayers/Symbolizer/Point-js.html
+++ b/doc/devdocs/files/OpenLayers/Symbolizer/Point-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Point - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint( [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -57,10 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Symbolizer/Polygon-js.html b/doc/devdocs/files/OpenLayers/Symbolizer/Polygon-js.html
index e5a89b7..e729693 100644
--- a/doc/devdocs/files/OpenLayers/Symbolizer/Polygon-js.html
+++ b/doc/devdocs/files/OpenLayers/Symbolizer/Polygon-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Polygon - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrin [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -39,10 +39,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Symbolizer/Raster-js.html b/doc/devdocs/files/OpenLayers/Symbolizer/Raster-js.html
index 1c5814c..9e1e205 100644
--- a/doc/devdocs/files/OpenLayers/Symbolizer/Raster-js.html
+++ b/doc/devdocs/files/OpenLayers/Symbolizer/Raster-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Raster - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -23,10 +23,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Symbolizer/Text-js.html b/doc/devdocs/files/OpenLayers/Symbolizer/Text-js.html
index b8c7ddc..893df5f 100644
--- a/doc/devdocs/files/OpenLayers/Symbolizer/Text-js.html
+++ b/doc/devdocs/files/OpenLayers/Symbolizer/Text-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Symbolizer.Text - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint() [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -35,10 +35,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([29, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([32, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Tile-js.html b/doc/devdocs/files/OpenLayers/Tile-js.html
index e34fc90..5e0ae62 100644
--- a/doc/devdocs/files/OpenLayers/Tile-js.html
+++ b/doc/devdocs/files/OpenLayers/Tile-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Jav [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -51,7 +51,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy:function()</td></tr></table></blockquote><p>Nullify references to prevent circular references and memory leaks.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>deferred</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Clear whatever [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>force</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Clear whatever is [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.shouldDraw"></a>shouldDraw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">shouldDraw: function()</td></tr></table></blockquote><p>Return whether or not the tile should actually be (re-)drawn.  The only case where we <b>wouldn’t</b> want to draw the tile is if the tile is outside its layer’s maxExtent</p><h4 class=C [...]
 
@@ -67,15 +67,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>on: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for registering listeners with a common scope. </div></div><div class=C [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>on: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for registering listeners with a common scope. </div></div><div class=C [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Tile/Image-js.html b/doc/devdocs/files/OpenLayers/Tile/Image-js.html
index 189bc28..5c91605 100644
--- a/doc/devdocs/files/OpenLayers/Tile/Image-js.html
+++ b/doc/devdocs/files/OpenLayers/Tile/Image-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile.Image - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><s [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,10 +11,12 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h1><div class=CBody><p>Instances of OpenLayers.Tile.Image are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link15 onMouseOver="ShowTip(event, 'tt1', 'link15')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h1><div class=CBody><p>Instances of OpenLayers.Tile.Image are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link18 onMouseOver="ShowTip(event, 'tt1', 'link18')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Properties"></a>Properties</h3></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.events"></a>events</h3><div class=CBody><p>{<a href="../Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>} An events object that handles all events on the tile.</p><h4 class=CHeading>Register a listener for a particular event with the following syntax</h4><blockquote><pre class="prettyprint">tile.events.register(type, obj, listener);</pre></blockquote><h4 class=CHeading>Supported  [...]
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.url"></a>url</h3><div class=CBody><p>{String} The URL of the image being requested.  No default.  Filled in by layer.getURL() function.  May be modified by loadstart listeners.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.imgDiv"></a>imgDiv</h3><div class=CBody><p>{HTMLImageElement} The image for this tile.</p></div></div></div>
@@ -27,23 +29,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.asyncRequestId"></a>asyncRequestId</h3><div class=CBody><p>{Integer} ID of an request to see if request is still valid.  This is a number which increments by 1 for each asynchronous request.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.blankImageUrl"></a>blankImageUrl</h3><div class=CBody><p>{String} Using a data scheme url is not supported by all browsers, but we don’t care because we either set it as css backgroundImage, or the image’s display style is set to “none” when we use it.</p></div></div></div>
-
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.maxGetUrlLength"></a>maxGetUrlLength</h3><div class=CBody><p>{Number} If set, requests that would result in GET urls with more characters than the number provided will be made using form-encoded HTTP POST.  It is good practice to avoid urls that are longer than 2048 characters.</p><h4 class=CHeading>Caution</h4><p>Older versions of Gecko based browsers (e.g.  Firefox < 3.5) and most Oper [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.canvasContext"></a>canvasContext</h3><div class=CBody><p>{CanvasRenderingContext2D} A canvas context associated with the tile image.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.crossOriginKeyword"></a>crossOriginKeyword</h3><div class=CBody><p>The value of the crossorigin keyword to use when loading images.  This is only relevant when using <a href="#OpenLayers.Tile.Image.getCanvasContext" class=LFunction id=link16 onMouseOver="ShowTip(event, 'tt14', 'link16')" onMouseOut="HideTip('tt14')">getCanvasContext</a> for tiles from remote origins and should be set to either & [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.crossOriginKeyword"></a>crossOriginKeyword</h3><div class=CBody><p>The value of the crossorigin keyword to use when loading images.  This is only relevant when using <a href="#OpenLayers.Tile.Image.getCanvasContext" class=LFunction id=link22 onMouseOver="ShowTip(event, 'tt16', 'link22')" onMouseOut="HideTip('tt16')">getCanvasContext</a> for tiles from remote origins and should be set to either & [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link17 onMouseOver="ShowTip(event, 'tt1', 'link17')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionLi [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.OpenLayers.Tile.Image"></a>OpenLayers.<wbr>Tile.<wbr>Image</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.Image.OpenLayers.Tile.Image" class=LConstructor id=link23 onMouseOver="ShowTip(event, 'tt1', 'link23')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.Image</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionLi [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Functions"></a>Functions</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote><p>nullify references to prevent circular references and memory leaks</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">draw: function()</td></tr></table></blockquote><p>Check that a tile should be drawn, and draw it.</p><h4 class=CHeading>Returns</h4><p>{Boolean} Was a tile drawn?</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">draw: function()</td></tr></table></blockquote><p>Check that a tile should be drawn, and draw it.</p><h4 class=CHeading>Returns</h4><p>{Boolean} Was a tile drawn?  Or null if a beforedraw listener returned false.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.renderTile"></a>renderTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">renderTile: function()</td></tr></table></blockquote><p>Internal function to actually initialize the image tile, position it correctly, and set its url.</p></div></div></div>
 
@@ -53,6 +53,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.getImage"></a>getImage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getImage: function()</td></tr></table></blockquote><p>Returns or creates and returns the tile image.</p></div></div></div>
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.setImage"></a>setImage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setImage: function(</td><td class="PParameter  prettyprint " nowrap>img</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>S [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.initImage"></a>initImage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">initImage: function()</td></tr></table></blockquote><p>Creates the content for the frame on the tile.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.setImgSrc"></a>setImgSrc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setImgSrc: function(</td><td class="PParameter  prettyprint " nowrap>url</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>< [...]
@@ -65,26 +67,32 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.onImageError"></a>onImageError</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onImageError: function()</td></tr></table></blockquote><p>Handler for the image onerror event</p></div></div></div>
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.stopLoading"></a>stopLoading</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">stopLoading: function()</td></tr></table></blockquote><p>Stops a loading sequence so <a href="#OpenLayers.Tile.Image.onImageLoad" class=LFunction id=link28 onMouseOver="ShowTip(event, 'tt13', 'link28')" onMouseOut="HideTip('tt13')">onImageLoad</a> won [...]
+
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.getCanvasContext"></a>getCanvasContext</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCanvasContext: function()</td></tr></table></blockquote><p>Returns a canvas context associated with the tile image (with the image drawn on it).  Returns undefined if the browser does not support canvas, if the tile has no image or i [...]
 if (context) {
     var data = context.canvas.toDataURL('image/jpeg');
 }</pre></blockquote><h4 class=CHeading>Returns</h4><p>{Boolean}</p></div></div></div>
 
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.Constants"></a>Constants</h3></div></div>
+
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Image.OpenLayers.Tile.Image.IMAGE"></a>OpenLayers.<wbr>Tile.<wbr>Image.<wbr>IMAGE</h3><div class=CBody><p>{HTMLImageElement} The image for a tile.</p></div></div></div>
+
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>nullify references to prevent circular references and memory leaks</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 ce [...]
+<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>nullify references to prevent circular references and memory leaks</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 ce [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Tile/Image/IFrame-js.html b/doc/devdocs/files/OpenLayers/Tile/Image/IFrame-js.html
index 0f0b6d9..fea5cf3 100644
--- a/doc/devdocs/files/OpenLayers/Tile/Image/IFrame-js.html
+++ b/doc/devdocs/files/OpenLayers/Tile/Image/IFrame-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/Image/IFrame.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/Image/IFrame.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../../styles/main.css"><script language=JavaScript src="../../../../javascript/main.js"></script><script language=JavaScript src="../../../../javascript/prettify.js"></script><script language=JavaScript src="../../../../javascript/searchdata.js"></script></head [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="IFrame.js"></a>IFrame.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#IFrame.js" >IFrame.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescriptio [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="IFrame.js"></a>IFrame.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#IFrame.js" >IFrame.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescriptio [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Constants"></a>Constants</h3></div></div>
 
@@ -21,6 +21,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="useIFrame"></a>useIFrame</h3><div class=CBody><p>{Boolean} true if we are currently using an IFrame to render POST responses, false if we are using an img element to render GET responses.</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="blankImageUrl"></a>blankImageUrl</h3><div class=CBody><p>{String} Using a data scheme url is not supported by all browsers, but we don’t care because we either set it as css backgroundImage, or the image’s display style is set to “none” when we use it.</p></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">draw: function()</td></tr></table></blockquote><p>Set useIFrame in the instance, and operate the image/iframe switch.  Then call Tile.Image.draw.</p><h4 class=CHeading>Returns</h4><p>{Boolean}</p></div></div></div>
@@ -41,10 +43,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Tile/UTFGrid-js.html b/doc/devdocs/files/OpenLayers/Tile/UTFGrid-js.html
index fc6fcd7..d4ca138 100644
--- a/doc/devdocs/files/OpenLayers/Tile/UTFGrid-js.html
+++ b/doc/devdocs/files/OpenLayers/Tile/UTFGrid-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tile.UTFGrid - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"> [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h1><div class=CBody><p>Instances of OpenLayers.Tile.UTFGrid are used to manage UTFGrids.  This is an unusual tile type in that it doesn’t have a rendered image; only a ‘hit grid’ that can be used to look up feature attributes.</p><p>See the <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConst [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h1><div class=CBody><p>Instances of OpenLayers.Tile.UTFGrid are used to manage UTFGrids.  This is an unusual tile type in that it doesn’t have a rendered image; only a ‘hit grid’ that can be used to look up feature attributes.</p><p>See the <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConst [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.url"></a>url</h3><div class=CBody><p>{String} The URL of the UTFGrid file being requested.  Provided by the <a href="../Layer/ArcGISCache-js.html#getURL" class=LFunction id=link11 onMouseOver="ShowTip(event, 'tt10', 'link11')" onMouseOut="HideTip('tt10')">getURL</a> method.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.url"></a>url</h3><div class=CBody><p>{String} The URL of the UTFGrid file being requested.  Provided by the <a href="../Layer/ArcGISCache-js.html#getURL" class=LFunction id=link12 onMouseOver="ShowTip(event, 'tt11', 'link12')" onMouseOut="HideTip('tt11')">getURL</a> method.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.utfgridResolution"></a>utfgridResolution</h3><div class=CBody><p>{Number} Ratio of the pixel width to the width of a UTFGrid data point.   If an entry in the grid represents a 4x4 block of pixels, the utfgridResolution would be 4.   Default is 2.</p></div></div></div>
 
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConstructor id=link12 onMouseOver="ShowTip(event, 'tt1', 'link12')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.UTFGrid</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CD [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid"></a>OpenLayers.<wbr>Tile.<wbr>UTFGrid</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.Tile.UTFGrid.OpenLayers.Tile.UTFGrid" class=LConstructor id=link13 onMouseOver="ShowTip(event, 'tt1', 'link13')" onMouseOut="HideTip('tt1')">OpenLayers.Tile.UTFGrid</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CD [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.UTFGrid.Functions"></a>Functions</h3></div></div>
 
@@ -51,15 +51,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([30, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([33, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprin [...]
+<div class=CToolTip id="tt1"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote>Clean up.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprin [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/TileManager-js.html b/doc/devdocs/files/OpenLayers/TileManager-js.html
new file mode 100644
index 0000000..04d4a3e
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/TileManager-js.html
@@ -0,0 +1,99 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.TileManager - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langu [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.TileManager"></a>OpenLayers.<wbr>TileManager</h1><div class=CBody><p>Provides queueing of image requests and caching of image elements.</p><p>Queueing avoids unnecessary image requests while changing zoom levels quickly, and helps improve dragging performance on mobile devices that show a lag in dragging when loading of new images starts.  <a href="#OpenLayers.TileManager.zoomDela [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.cacheSize"></a>cacheSize</h3><div class=CBody><p>{Number} Number of image elements to keep referenced in this instance’s cache for fast reuse.  Default is 256.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.tilesPerFrame"></a>tilesPerFrame</h3><div class=CBody><p>{Number} Number of queued tiles to load per frame (see <a href="#OpenLayers.TileManager.frameDelay" class=LProperty id=link29 onMouseOver="ShowTip(event, 'tt1', 'link29')" onMouseOut="HideTip('tt1')">frameDelay</a>).  Default is 2.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.frameDelay"></a>frameDelay</h3><div class=CBody><p>{Number} Delay between tile loading frames (see <a href="#OpenLayers.TileManager.tilesPerFrame" class=LProperty id=link30 onMouseOver="ShowTip(event, 'tt2', 'link30')" onMouseOut="HideTip('tt2')">tilesPerFrame</a>) in milliseconds.  Default is 16.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.moveDelay"></a>moveDelay</h3><div class=CBody><p>{Number} Delay in milliseconds after a map’s move event before loading tiles.  Default is 100.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.zoomDelay"></a>zoomDelay</h3><div class=CBody><p>{Number} Delay in milliseconds after a map’s zoomend event before loading tiles.  Default is 200.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.maps"></a>maps</h3><div class=CBody><p>{Array(<a href="Map-js.html#OpenLayers.Map" class=LClass id=link31 onMouseOver="ShowTip(event, 'tt3', 'link31')" onMouseOut="HideTip('tt3')">OpenLayers.Map</a>)} The maps to manage tiles on.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.tileQueueId"></a>tileQueueId</h3><div class=CBody><p>{Object} The ids of the <a href="#OpenLayers.TileManager.drawTilesFromQueue" class=LFunction id=link32 onMouseOver="ShowTip(event, 'tt4', 'link32')" onMouseOut="HideTip('tt4')">drawTilesFromQueue</a> loop, keyed by map id.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.tileQueue"></a>tileQueue</h3><div class=CBody><p>{Object(Array(<a href="Tile-js.html#OpenLayers.Tile" class=LClass id=link33 onMouseOver="ShowTip(event, 'tt5', 'link33')" onMouseOut="HideTip('tt5')">OpenLayers.Tile</a>))} Tiles queued for drawing, keyed by map id.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.tileCache"></a>tileCache</h3><div class=CBody><p>{Object} Cached image elements, keyed by URL.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.tileCacheIndex"></a>tileCacheIndex</h3><div class=CBody><p>{Array(String)} URLs of cached tiles.  First entry is the least recently used.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.OpenLayers.TileManager"></a>OpenLayers.<wbr>TileManager</h3><div class=CBody><p>Constructor for a new <a href="#OpenLayers.TileManager.OpenLayers.TileManager" class=LConstructor id=link34 onMouseOver="ShowTip(event, 'tt6', 'link34')" onMouseOut="HideTip('tt6')">OpenLayers.TileManager</a> instance.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionL [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.addMap"></a>addMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Binds  [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.removeMap"></a>removeMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.move"></a>move</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>move: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Handles the  [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.zoomEnd"></a>zoomEnd</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>zoomEnd: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Han [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.changeLayer"></a>changeLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>changeLayer: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.addLayer"></a>addLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addLayer: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.removeLayer"></a>removeLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>removeLayer: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.updateTimeout"></a>updateTimeout</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>updateTimeout: function(</td><td class="PParameter  prettyprint " nowrap>map,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>delay,</td></tr><tr><td> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Lis [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.unloadTile"></a>unloadTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unloadTile: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.queueTileDraw"></a>queueTileDraw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>queueTileDraw: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table>< [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.drawTilesFromQueue"></a>drawTilesFromQueue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawTilesFromQueue: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.manageTileCache"></a>manageTileCache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>manageTileCache: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.addToCache"></a>addToCache</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addToCache: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.clearTileQueue"></a>clearTileQueue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clearTileQueue: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.TileManager.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CProperty>{Number} Delay between tile loading frames (see tilesPerFrame) in milliseconds. </div></div><div class=CToolTip id="tt2"><div class=CProperty>{Number} Number of queued tiles to load per frame (see frameDelay). </div></div><div class=CToolTip id="tt3"><div class=CClass>Instances of OpenLayers.Map are interactive maps embedded in a web page. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacin [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/Tween-js.html b/doc/devdocs/files/OpenLayers/Tween-js.html
index 0b9be19..1a54e74 100644
--- a/doc/devdocs/files/OpenLayers/Tween-js.html
+++ b/doc/devdocs/files/OpenLayers/Tween-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Tween - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=Ja [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tween"></a>OpenLayers.<wbr>Tween</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Tween" >OpenLayers.<wbr>Tween</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Ope [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Tween"></a>OpenLayers.<wbr>Tween</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Tween" >OpenLayers.<wbr>Tween</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Ope [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.Properties"></a>Properties</h3></div></div>
 
@@ -27,6 +27,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.time"></a>time</h3><div class=CBody><p>{int} Step counter</p></div></div></div>
 
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.minFrameRate"></a>minFrameRate</h3><div class=CBody><p>{Number} The minimum framerate for animations in frames per second.  After each step, the time spent in the animation is compared to the calculated time at this frame rate.  If the animation runs longer than the calculated time, the next step is skipped.  Default is 30.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.startTime"></a>startTime</h3><div class=CBody><p>{Number} The timestamp of the first execution step.  Used for skipping frames</p></div></div></div>
+
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.animationId"></a>animationId</h3><div class=CBody><p>{int} Loop id returned by OpenLayers.Animation.start</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.playing"></a>playing</h3><div class=CBody><p>{Boolean} Tells if the easing is currently playing</p></div></div></div>
@@ -37,7 +41,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>start: function(</td><td class="PParameter  prettyprint " nowrap>begin,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>finish,</td></tr><tr><td></td><td class="PParameter  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>start: function(</td><td class="PParameter  prettyprint " nowrap>begin,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>finish,</td></tr><tr><td></td><td class="PParameter  [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tween.stop"></a>stop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">stop: function()</td></tr></table></blockquote><p>Stops the Tween, and calls the done callback Doesn’t do anything if animation is already finished</p></div></div></div>
 
@@ -81,10 +85,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Util-js.html b/doc/devdocs/files/OpenLayers/Util-js.html
index bddb705..271366b 100644
--- a/doc/devdocs/files/OpenLayers/Util-js.html
+++ b/doc/devdocs/files/OpenLayers/Util-js.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Util - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Util"></a>Util</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Util" >Util</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Util.Functions_and_Properties" >Functions and Properties</a>< [...]
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Util"></a>Util</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Util" >Util</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Util.Functions_and_Properties" >Functions and Properties</a>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Util.Functions_and_Properties"></a>Functions and Properties</h3></div></div>
 
@@ -23,11 +23,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.removeItem"></a>removeItem</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.removeItem = function(</td><td class="PParameter  prettyprint " nowrap>array,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>item</td><td class="PAfterParame [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.indexOf"></a>indexOf</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.indexOf = function(</td><td class="PParameter  prettyprint " nowrap>array,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  pret [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.indexOf"></a>indexOf</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.indexOf = function(</td><td class="PParameter  prettyprint " nowrap>array,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  pret [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.modifyDOMElement"></a>modifyDOMElement</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.modifyDOMElement = function(</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>id,</td></tr [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Util.dotless"></a>dotless</h3><div class=CBody><p>{RegExp} Compiled regular expression to match dots (“.”).   This is used for replacing dots in identifiers.   Because object identifiers are frequently used for DOM element identifiers by the library, we avoid using dots to make for more sensible CSS selectors.</p><p>TODO: Use a module pattern to avoid bloating the API with stuff like this.</p></div>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createDiv"></a>createDiv</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createDiv = function(</td><td class="PParameter  prettyprint " nowrap>id,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="P [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.modifyDOMElement"></a>modifyDOMElement</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.modifyDOMElement = function(</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>id,</td></tr [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createDiv"></a>createDiv</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createDiv = function(</td><td class="PParameter  prettyprint " nowrap>id,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td class="P [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createImage"></a>createImage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createImage = function(</td><td class="PParameter  prettyprint " nowrap>id,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>px,</td></tr><tr><td></td><td cl [...]
 
@@ -73,11 +75,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.destinationVincenty"></a>destinationVincenty</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.destinationVincenty = function(</td><td class="PParameter  prettyprint " nowrap>lonlat,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>brng [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.getParameters"></a>getParameters</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.getParameters = function(</td><td class="PParameter  prettyprint " nowrap>url</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.getParameters"></a>getParameters</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.getParameters = function(</td><td class="PParameter  prettyprint " nowrap>url,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PA [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Util.lastSeqID"></a>lastSeqID</h3><div class=CBody><p>{Integer} The ever-incrementing count variable.  Used for generating unique ids.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createUniqueID"></a>createUniqueID</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createUniqueID = function(</td><td class="PParameter  prettyprint " nowrap>prefix</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createUniqueID"></a>createUniqueID</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createUniqueID = function(</td><td class="PParameter  prettyprint " nowrap>prefix</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Util.Constants"></a>Constants</h3></div></div>
 
@@ -99,7 +101,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.isEquivalentUrl"></a>isEquivalentUrl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.isEquivalentUrl = function(</td><td class="PParameter  prettyprint " nowrap>url1,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>url2,</td></tr><tr [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createUrlObject"></a>createUrlObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createUrlObject = function(</td><td class="PParameter  prettyprint " nowrap>url,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td cla [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.createUrlObject"></a>createUrlObject</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.createUrlObject = function(</td><td class="PParameter  prettyprint " nowrap>url,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td cla [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="Util.removeTail"></a>removeTail</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.removeTail = function(</td><td class="PParameter  prettyprint " nowrap>url</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
 
@@ -127,15 +129,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([31, 32], 34);// --></script></div><!--Menu-->
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">OpenLayers.Util.getElement = function()</td></tr></table></blockquote>This is the old $() from prototype</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "n [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">OpenLayers.Util.getElement = function()</td></tr></table></blockquote>This is the old $() from prototype</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "n [...]
 
 
 
diff --git a/doc/devdocs/files/OpenLayers/Util/vendorPrefix-js.html b/doc/devdocs/files/OpenLayers/Util/vendorPrefix-js.html
new file mode 100644
index 0000000..1328f14
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/Util/vendorPrefix-js.html
@@ -0,0 +1,49 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.Util.vendorPrefix - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.Util.vendorPrefix"></a>OpenLayers.<wbr>Util.<wbr>vendorPrefix</h1><div class=CBody><p>A collection of utility functions to detect vendor prefixed features</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#OpenLayers.Util.vendorPrefix" >OpenL [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.domToCss"></a>domToCss</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function domToCss(</td><td class="PParameter  prettyprint " nowrap>prefixedDom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.css"></a>css</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function css(</td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Detec [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.js"></a>js</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function js(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprin [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.vendorPrefix.style"></a>style</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function style(</td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p [...]
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div clas [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function domToCss(</td><td class="PParameter  prettyprint " nowrap>prefixedDom</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Converts a upper camel case DOM style property name to a CSS property i.e. </div [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/WPSClient-js.html b/doc/devdocs/files/OpenLayers/WPSClient-js.html
new file mode 100644
index 0000000..1b2fe3d
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/WPSClient-js.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.WPSClient - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script languag [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.WPSClient"></a>OpenLayers.<wbr>WPSClient</h1><div class=CBody><p>High level API for interaction with Web Processing Services (WPS).  An <a href="#OpenLayers.WPSClient.OpenLayers.WPSClient" class=LConstructor >OpenLayers.WPSClient</a> instance is used to create <a href="WPSProcess-js.html#OpenLayers.WPSProcess" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt3', 'link6')" onMo [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.servers"></a>servers</h3><div class=CBody><p>{Object} Service metadata, keyed by a local identifier.</p><h4 class=CHeading>Properties</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>url</td><td class=CDLDescription>{String} the url of the server</td></tr><tr><td class=CDLEntry>version</td><td class=CDLDescription>{String} WPS version of the server</td></tr [...]
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.version"></a>version</h3><div class=CBody><p>{String} The default WPS version to use if none is configured.  Default is ‘1.0.0’.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.lazy"></a>lazy</h3><div class=CBody><p>{Boolean} Should the DescribeProcess be deferred until a process is fully configured?  Default is false.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.events"></a>events</h3><div class=CBody><p>{<a href="Events-js.html#OpenLayers.Events" class=LClass >OpenLayers.Events</a>}</p><h4 class=CHeading>Supported event types</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>describeprocess</td><td class=CDLDescription>Fires when the process description is available.  Listeners receive an object with a ‘ [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.OpenLayers.WPSClient"></a>OpenLayers.<wbr>WPSClient</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Object whose properties will be set on the instance.</td></tr></table><h4 class=CHeading>Avaliable options</h4><table border=0 cellspacing=0 cellpadding=0 cla [...]
+    local: '/geoserver/wps'
+}, {
+    opengeo: {
+        url: 'http://demo.opengeo.org/geoserver/wps',
+        version: '1.0.0'
+    }
+}</pre></blockquote><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lazy</td><td class=CDLDescription>{Boolean} Optional.  Set to true if DescribeProcess should not be requested until a process is fully configured.  Default is false.</td></tr></table></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.execute"></a>execute</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>execute: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>S [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.getProcess"></a>getProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getProcess: function(</td><td class="PParameter  prettyprint " nowrap>serverID,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>processID</td><td class="PAfte [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.describeProcess"></a>describeProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>describeProcess: function(</td><td class="PParameter  prettyprint " nowrap>serverID,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>processID,</td> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSClient.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>execute: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Shortcut to execute a process with a single function call. </div></div><div class=CT [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/OpenLayers/WPSProcess-js.html b/doc/devdocs/files/OpenLayers/WPSProcess-js.html
new file mode 100644
index 0000000..06cc7dd
--- /dev/null
+++ b/doc/devdocs/files/OpenLayers/WPSProcess-js.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>OpenLayers.WPSProcess - OpenLayers</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script langua [...]
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="OpenLayers.WPSProcess"></a>OpenLayers.<wbr>WPSProcess</h1><div class=CBody><p>Representation of a WPS process.  Usually instances of <a href="#OpenLayers.WPSProcess.OpenLayers.WPSProcess" class=LConstructor >OpenLayers.WPSProcess</a> are created by calling ‘getProcess’ on an <a href="WPSClient-js.html#OpenLayers.WPSClient" class=LClass id=link17 onMouseOver="ShowTip(event, 'tt1', [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.client"></a>client</h3><div class=CBody><p>{<a href="WPSClient-js.html#OpenLayers.WPSClient" class=LClass id=link19 onMouseOver="ShowTip(event, 'tt1', 'link19')" onMouseOut="HideTip('tt1')">OpenLayers.WPSClient</a>} The client that manages this process.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.server"></a>server</h3><div class=CBody><p>{String} Local client identifier for this process’s server.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.identifier"></a>identifier</h3><div class=CBody><p>{String} Process identifier known to the server.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.description"></a>description</h3><div class=CBody><p>{Object} DescribeProcess response for this process.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.localWPS"></a>localWPS</h3><div class=CBody><p>{String} Service endpoint for locally chained WPS processes.  Default is ‘<a href="http://geoserver/wps" class=LURL target=_top>http://geoserver/wps</a>’.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.formats"></a>formats</h3><div class=CBody><p>{Object} OpenLayers.Format instances keyed by mimetype.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.chained"></a>chained</h3><div class=CBody><p>{Integer} Number of chained processes for pending execute requests that don’t have a full configuration yet.</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.executeCallbacks"></a>executeCallbacks</h3><div class=CBody><p>{Array} Callbacks waiting to be executed until all chained processes are configured;</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.OpenLayers.WPSProcess"></a>OpenLayers.<wbr>WPSProcess</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Object whose properties will be set on the instance.</td></tr></table><h4 class=CHeading>Avaliable options</h4><table border=0 cellspacing=0 cellpadding=0  [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.describe"></a>describe</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>describe: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.configure"></a>configure</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>configure: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquo [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.execute"></a>execute</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>execute: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.output"></a>output</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>output: function(</td><td class="PParameter  prettyprint " nowrap>identifier</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p> [...]
+intersect.configure({
+    // ...
+});
+buffer = client.getProcess('opengeo', 'JTS:buffer');
+buffer.execute({
+    inputs: {
+        geom: intersect.output('result'), // <-- here we're chaining
+        distance: 1
+    },
+    // ...
+});</pre></blockquote><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>identifier</td><td class=CDLDescription>{String} Identifier of the output that we’re chaining.  If not provided, the first output will be used.</td></tr></table></div></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.parseDescription"></a>parseDescription</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>parseDescription: function(</td><td class="PParameter  prettyprint " nowrap>description</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></t [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.setInputData"></a>setInputData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setInputData: function(</td><td class="PParameter  prettyprint " nowrap>input,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>data</td><td class="PAfter [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.setResponseForm"></a>setResponseForm</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setResponseForm: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr> [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.getOutputIndex"></a>getOutputIndex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getOutputIndex: function(</td><td class="PParameter  prettyprint " nowrap>outputs,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>identifier</td><td [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.chainProcess"></a>chainProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>chainProcess: function(</td><td class="PParameter  prettyprint " nowrap>input,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>chainLink</td><td class="P [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.toFeatures"></a>toFeatures</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>toFeatures: function(</td><td class="PParameter  prettyprint " nowrap>source</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.findMimeType"></a>findMimeType</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>findMimeType: function(</td><td class="PParameter  prettyprint " nowrap>sourceFormats,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>targetFormats</td> [...]
+
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink"></a>OpenLayers.<wbr>WPSProcess.<wbr>ChainLink</h2><div class=CBody><p>Type for chaining processes.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.WPSProcess.ChainLink.Properties" >Properties</a></td><td class=SDescription></td></tr>< [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.process"></a>process</h3><div class=CBody><p>{<a href="#OpenLayers.WPSProcess" class=LClass id=link37 onMouseOver="ShowTip(event, 'tt14', 'link37')" onMouseOut="HideTip('tt14')">OpenLayers.WPSProcess</a>} The process to chain</p></div></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.output"></a>output</h3><div class=CBody><p>{String} The output identifier of the output we are going to use as input for another process.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.WPSProcess.ChainLink.OpenLayers.WPSProcess.ChainLink"></a>OpenLayers.<wbr>WPSProcess.<wbr>ChainLink</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object} Properties to set on the instance.</td></tr></table></div></div></div>
+
+</div><!--Content-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=M [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([34, 35], 37);// --></script></div><!--Menu-->
+
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>High level API for interaction with Web Processing Services (WPS). </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>describe: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td>< [...]
+
+
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/files/deprecated-js.html b/doc/devdocs/files/deprecated-js.html
index 3d2c462..642c6dc 100644
--- a/doc/devdocs/files/deprecated-js.html
+++ b/doc/devdocs/files/deprecated-js.html
@@ -1,9 +1,9 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
 
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.12/lib/deprecated.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>/tmp/openlayers/tools/OpenLayers-2.13/lib/deprecated.js - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPr [...]
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="deprecated.js"></a>deprecated.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#deprecated.js" >deprecated.js</a></td><td class=SDescription></td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Deprecated" >Deprecated</ [...]
+<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="deprecated.js"></a>deprecated.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#deprecated.js" >deprecated.js</a></td><td class=SDescription></td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Deprecated" >Deprecated</ [...]
 
 <div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Deprecated"></a>Deprecated</h3><div class=CBody><p>The deprecated.js script includes all methods, properties, and constructors that are not supported as part of the long-term API.   If you use any of these, you have to explicitly include this script in your application.</p><h4 class=CHeading>For example</h4><blockquote><pre class="prettyprint"><script src="deprecated.js" type="text/javascript"&g [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Class"></a>OpenLayers.<wbr>Class</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Class.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Class.isP [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Class"></a>OpenLayers.<wbr>Class</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Class.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Class.isP [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Class.Properties"></a>Properties</h3></div></div>
 
@@ -27,7 +27,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Class.inherit"></a>inherit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Class.inherit = function (</td><td class="PParameter  prettyprint " nowrap>P</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockq [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Util"></a>OpenLayers.Util</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Util.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Util.clearArray" id [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Util"></a>OpenLayers.Util</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Util.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Util.clearArray" id [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.Functions"></a>Functions</h3></div></div>
 
@@ -35,17 +35,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.setOpacity = function(</td><td class="PParameter  prettyprint " nowrap>element,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>opacity</td><td cla [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.safeStopPropagation"></a>safeStopPropagation</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.safeStopPropagation = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.safeStopPropagation"></a>safeStopPropagation</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.safeStopPropagation = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Util.getArgs"></a>getArgs</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.getArgs = function(</td><td class="PParameter  prettyprint " nowrap>url</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockqu [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax"></a>OpenLayers.Ajax</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Ajax.OpenLayers.nul [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax"></a>OpenLayers.Ajax</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Ajax.OpenLayers.nul [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Functions"></a>Functions</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.OpenLayers.nullHandler"></a>OpenLayers.<wbr>nullHandler</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.nullHandler = function(</td><td class="PParameter  prettyprint " nowrap>request</td><td class="PAfterParameters  prettyprint "nowrap>)</td></ [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.OpenLayers.loadURL"></a>OpenLayers.<wbr>loadURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.loadURL = function(</td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>params,</t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.OpenLayers.loadURL"></a>OpenLayers.<wbr>loadURL</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.loadURL = function(</td><td class="PParameter  prettyprint " nowrap>uri,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>params,</t [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.OpenLayers.parseXMLString"></a>OpenLayers.<wbr>parseXMLString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.parseXMLString = function(</td><td class="PParameter  prettyprint " nowrap>text</td><td class="PAfterParameters  prettyprint "nowrap>)< [...]
 
@@ -57,7 +57,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.activeRequestCount"></a>activeRequestCount</h3><div class=CBody><p>{Integer}</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Responders"></a>OpenLayers.<wbr>Ajax.<wbr>Responders</h2><div class=CBody><p>{Object}</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Responders.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarke [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Responders"></a>OpenLayers.<wbr>Ajax.<wbr>Responders</h2><div class=CBody><p>{Object}</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Responders.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarke [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Responders.Properties"></a>Properties</h3></div></div>
 
@@ -81,7 +81,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Base.OpenLayers.Ajax.Base"></a>OpenLayers.<wbr>Ajax.Base</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>{Object}</td></tr></table></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Request"></a>OpenLayers.<wbr>Ajax.<wbr>Request</h2><div class=CBody><p><b>Deprecated</b>.   Use <a href="OpenLayers/Request-js.html#OpenLayers.Request" class=LClass id=link214 onMouseOver="ShowTip(event, 'tt185', 'link214')" onMouseOut="HideTip('tt185')">OpenLayers.Request</a> method instead.</p><h4 class=CHeading>Inherit</h4><ul><li><a href="#OpenLayers.Ajax.Base" class=LClass >OpenLayers.Ajax.Base</a>< [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Request"></a>OpenLayers.<wbr>Ajax.<wbr>Request</h2><div class=CBody><p><b>Deprecated</b>.   Use <a href="OpenLayers/Request-js.html#OpenLayers.Request" class=LClass id=link222 onMouseOver="ShowTip(event, 'tt193', 'link222')" onMouseOut="HideTip('tt193')">OpenLayers.Request</a> method instead.</p><h4 class=CHeading>Inherit</h4><ul><li><a href="#OpenLayers.Ajax.Base" class=LClass >OpenLayers.Ajax.Base</a>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.Properties"></a>Properties</h3></div></div>
 
@@ -107,13 +107,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.getHeader"></a>getHeader</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getHeader: function(</td><td class="PParameter  prettyprint " nowrap>name</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquot [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.dispatchException"></a>dispatchException</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dispatchException: function(</td><td class="PParameter  prettyprint " nowrap>exception</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.dispatchException"></a>dispatchException</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dispatchException: function(</td><td class="PParameter  prettyprint " nowrap>exception</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table> [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Request.Events"></a>Events</h3><div class=CBody><p>{Array(String)}</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Response"></a>OpenLayers.<wbr>Ajax.<wbr>Response</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Response.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry>< [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Ajax.Response"></a>OpenLayers.<wbr>Ajax.<wbr>Response</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Ajax.Response.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Response.Properties"></a>Properties</h3></div></div>
 
@@ -139,7 +139,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Ajax.Response.serializeXMLToString"></a>serializeXMLToString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Ajax.serializeXMLToString = function(</td><td class="PParameter  prettyprint " nowrap>xmldom</td><td class="PAfterParameters  prettyprint "no [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Element"></a>OpenLayers.<wbr>Element</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Element.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Eleme [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Element"></a>OpenLayers.<wbr>Element</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Element.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Eleme [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Element.Functions"></a>Functions</h3></div></div>
 
@@ -161,13 +161,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Element.Function.bindAsEventListener"></a>Function.<wbr>bindAsEventListener</h3><div class=CBody><p><b>Deprecated</b>.  Bind a function to an object, and configure it to receive the event object as first parameter when called.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>object</td><td class=CDLDescription>{Object} A referenc [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile"></a>OpenLayers.Tile</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Tile.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Tile.getBoundsFromB [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile"></a>OpenLayers.Tile</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Tile.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLayers.Tile.getBoundsFromB [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.getBoundsFromBaseLayer"></a>getBoundsFromBaseLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getBoundsFromBaseLayer: function(</td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.getBoundsFromBaseLayer"></a>getBoundsFromBaseLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getBoundsFromBaseLayer: function(</td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseDefaults"></a>OpenLayers.<wbr>Control.<wbr>MouseDefaults</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation" class=LClass id=link239 onMouseOver="ShowTip(event, 'tt189', 'link239')" onMouseOut="HideTip('tt189')">OpenLayers.Control.Navigation</a> instea [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseDefaults"></a>OpenLayers.<wbr>Control.<wbr>MouseDefaults</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/Navigation-js.html#OpenLayers.Control.Navigation" class=LClass id=link247 onMouseOver="ShowTip(event, 'tt197', 'link247')" onMouseOut="HideTip('tt197')">OpenLayers.Control.Navigation</a> instea [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.Properties"></a>Properties</h3></div></div>
 
@@ -195,7 +195,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.defaultMouseMove"></a>defaultMouseMove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>defaultMouseMove: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.defaultMouseUp"></a>defaultMouseUp</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>defaultMouseUp: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.defaultMouseUp"></a>defaultMouseUp</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>defaultMouseUp: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.defaultMouseOut"></a>defaultMouseOut</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>defaultMouseOut: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></ [...]
 
@@ -209,7 +209,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseDefaults.onWheelEvent"></a>onWheelEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>onWheelEvent: function(</td><td class="PParameter  prettyprint " nowrap>e</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/NavToolbar-js.html#OpenLayers.Control.NavToolbar" class=LClass id=link255 onMouseOver="ShowTip(event, 'tt192', 'link255')" onMouseOut="HideTip('tt192')">OpenLayers.Control.NavToolbar</a> instead! [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h2><div class=CBody><p>This class is DEPRECATED in 2.4 and will be removed by 3.0.  If you need this functionality, use <a href="OpenLayers/Control/NavToolbar-js.html#OpenLayers.Control.NavToolbar" class=LClass id=link263 onMouseOver="ShowTip(event, 'tt200', 'link263')" onMouseOut="HideTip('tt200')">OpenLayers.Control.NavToolbar</a> instead! [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.Properties"></a>Properties</h3></div></div>
 
@@ -223,7 +223,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>position</td><td class=CDLDescription>{<a href="OpenLayers/BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link256 onMouseOver="ShowTip(event, 'tt187', 'lin [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.OpenLayers.Control.MouseToolbar"></a>OpenLayers.<wbr>Control.<wbr>MouseToolbar</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>position</td><td class=CDLDescription>{<a href="OpenLayers/BaseTypes/Pixel-js.html#OpenLayers.Pixel" class=LClass id=link264 onMouseOver="ShowTip(event, 'tt195', 'lin [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.Functions"></a>Functions</h3></div></div>
 
@@ -253,19 +253,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Control.MouseToolbar.defaultClick"></a>defaultClick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>defaultClick: function (</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Layer.Grid.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLay [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Grid"></a>OpenLayers.<wbr>Layer.Grid</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Layer.Grid.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLay [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getGridBounds"></a>getGridBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getGridBounds: function()</td></tr></table></blockquote><p>Deprecated.  This function will be removed in 3.0.  Please use getTilesBounds() instead.</p><h4 class=CHeading>Returns</h4><p>{<a href="OpenLayers/BaseTypes/Bounds-js.html#OpenLa [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Grid.getGridBounds"></a>getGridBounds</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getGridBounds: function()</td></tr></table></blockquote><p>Deprecated.  This function will be removed in 3.0.  Please use getTilesBounds() instead.</p><h4 class=CHeading>Returns</h4><p>{<a href="OpenLayers/BaseTypes/Bounds-js.html#OpenLa [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Format.XML.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLay [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Format.XML"></a>OpenLayers.<wbr>Format.XML</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Format.XML.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#OpenLay [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.concatChildValues"></a>concatChildValues</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>concatChildValues: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>def</td><td  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Format.XML.concatChildValues"></a>concatChildValues</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>concatChildValues: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>def</td><td  [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Post"></a>OpenLayers.<wbr>Layer.<wbr>WMS.Post</h2><div class=CBody><p>Instances of OpenLayers.Layer.WMS.Post are used to retrieve data from OGC Web Mapping Services via HTTP-POST (application/x-www-form-urlencoded).  Create a new WMS layer with the <a href="#OpenLayers.Layer.WMS.Post.OpenLayers.Layer.WMS.Post" class=LConstructor id=link262 onMouseOver="ShowTip(event, 'tt194', 'link262')" onMouseOut= [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Post"></a>OpenLayers.<wbr>Layer.<wbr>WMS.Post</h2><div class=CBody><p>Instances of OpenLayers.Layer.WMS.Post are used to retrieve data from OGC Web Mapping Services via HTTP-POST (application/x-www-form-urlencoded).  Create a new WMS layer with the <a href="#OpenLayers.Layer.WMS.Post.OpenLayers.Layer.WMS.Post" class=LConstructor id=link270 onMouseOver="ShowTip(event, 'tt202', 'link270')" onMouseOut= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Post.Properties"></a>Properties</h3></div></div>
 
@@ -284,9 +284,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Post.Functions"></a>Functions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Post.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParame [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Post.addTile"></a>addTile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTile: function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParame [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>WMS.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.WMS and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/WMS-js.html#OpenLayers.Layer.WMS" class=LClass id=link270 onMouseOver="ShowTip(event, 'tt195', 'link270')" onM [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>WMS.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.WMS and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/WMS-js.html#OpenLayers.Layer.WMS" class=LClass id=link278 onMouseOver="ShowTip(event, 'tt203', 'link278')" onM [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled.Properties"></a>Properties</h3></div></div>
 
@@ -300,7 +300,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WMS.Untiled.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Cr [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>MapServer.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.MapServer and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/MapServer-js.html#OpenLayers.Layer.MapServer" class=LClass id=link272 onMouseOver="ShowTip(e [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled"></a>OpenLayers.<wbr>Layer.<wbr>MapServer.<wbr>Untiled</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.MapServer and pass the option ‘singleTile’ as true.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/MapServer-js.html#OpenLayers.Layer.MapServer" class=LClass id=link280 onMouseOver="ShowTip(e [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled.Properties"></a>Properties</h3></div></div>
 
@@ -314,15 +314,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.MapServer.Untiled.clone"></a>clone</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>clone: function (</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile.WFS"></a>OpenLayers.<wbr>Tile.WFS</h2><div class=CBody><p>Instances of OpenLayers.Tile.WFS are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.WFS" class=LClass id=link282 onMouseOver="ShowTip(event, 'tt74', 'link282')" onMouseOut="HideTip('tt74')">OpenLayers.Tile.WFS</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a hr [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Tile.WFS"></a>OpenLayers.<wbr>Tile.WFS</h2><div class=CBody><p>Instances of OpenLayers.Tile.WFS are used to manage the image tiles used by various layers.   Create a new image tile with the <a href="#OpenLayers.Tile.WFS" class=LClass id=link290 onMouseOver="ShowTip(event, 'tt74', 'link290')" onMouseOut="HideTip('tt74')">OpenLayers.Tile.WFS</a> constructor.</p><h4 class=CHeading>Inherits from</h4><ul><li><a hr [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.Properties"></a>Properties</h3></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.features"></a>features</h3><div class=CBody><p>{Array(<a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link283 onMouseOver="ShowTip(event, 'tt63', 'link283')" onMouseOut="HideTip('tt63')">OpenLayers.Feature</a>)} list of features in this tile</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.features"></a>features</h3><div class=CBody><p>{Array(<a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link291 onMouseOver="ShowTip(event, 'tt63', 'link291')" onMouseOut="HideTip('tt63')">OpenLayers.Feature</a>)} list of features in this tile</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.url"></a>url</h3><div class=CBody><p>{String}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.request"></a>request</h3><div class=CBody><p>{<a href="OpenLayers/Request/XMLHttpRequest-js.html#OpenLayers.Request.XMLHttpRequest" class=LClass id=link284 onMouseOver="ShowTip(event, 'tt64', 'link284')" onMouseOut="HideTip('tt64')">OpenLayers.Request.XMLHttpRequest</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.request"></a>request</h3><div class=CBody><p>{<a href="OpenLayers/Request/XMLHttpRequest-js.html#OpenLayers.Request.XMLHttpRequest" class=LClass id=link292 onMouseOver="ShowTip(event, 'tt64', 'link292')" onMouseOut="HideTip('tt64')">OpenLayers.Request.XMLHttpRequest</a>}</p></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.Functions"></a>Functions</h3></div></div>
 
@@ -334,13 +334,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.loadFeaturesForRegion"></a>loadFeaturesForRegion</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>loadFeaturesForRegion:function(</td><td class="PParameter  prettyprint " nowrap>success,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.requestSuccess"></a>requestSuccess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>requestSuccess:function(</td><td class="PParameter  prettyprint " nowrap>request</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.requestSuccess"></a>requestSuccess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>requestSuccess:function(</td><td class="PParameter  prettyprint " nowrap>request</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.addResults"></a>addResults</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addResults: function(</td><td class="PParameter  prettyprint " nowrap>results</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockqu [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Tile.WFS.destroyAllFeatures"></a>destroyAllFeatures</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroyAllFeatures: function()</td></tr></table></blockquote><p>Iterate through and call destroy() on each feature, removing it from the local array</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Feature.WFS"></a>OpenLayers.<wbr>Feature.WFS</h2><div class=CBody><p>WFS handling class, for use as a featureClass on the WFS layer for handling ‘point’ WFS types.  Good for subclassing when creating a custom WFS like XML application.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link288 onMouseOver="ShowTip(event, 'tt63', ' [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Feature.WFS"></a>OpenLayers.<wbr>Feature.WFS</h2><div class=CBody><p>WFS handling class, for use as a featureClass on the WFS layer for handling ‘point’ WFS types.  Good for subclassing when creating a custom WFS like XML application.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link296 onMouseOver="ShowTip(event, 'tt63', ' [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.WFS.Constructor"></a>Constructor</h3></div></div>
 
@@ -352,23 +352,23 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Feature.WFS.processXMLNode"></a>processXMLNode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>processXMLNode: function(</td><td class="PParameter  prettyprint " nowrap>xmlNode</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WFS"></a>OpenLayers.<wbr>Layer.WFS</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with a Protocol.WFS and one or more Strategies.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link310 onMouseOver="ShowTip(event, 'tt199', 'link310')" onMouseOut="HideTip('tt199 [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.WFS"></a>OpenLayers.<wbr>Layer.WFS</h2><div class=CBody><p><b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with a Protocol.WFS and one or more Strategies.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/Vector-js.html#OpenLayers.Layer.Vector" class=LClass id=link318 onMouseOver="ShowTip(event, 'tt207', 'link318')" onMouseOut="HideTip('tt207 [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.isBaseLayer"></a>isBaseLayer</h3><div class=CBody><p>{Boolean} WFS layer is not a base layer by default.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.tile"></a>tile</h3><div class=CBody><p>{<a href="#OpenLayers.Tile.WFS" class=LClass id=link311 onMouseOver="ShowTip(event, 'tt74', 'link311')" onMouseOut="HideTip('tt74')">OpenLayers.Tile.WFS</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.tile"></a>tile</h3><div class=CBody><p>{<a href="#OpenLayers.Tile.WFS" class=LClass id=link319 onMouseOver="ShowTip(event, 'tt74', 'link319')" onMouseOut="HideTip('tt74')">OpenLayers.Tile.WFS</a>}</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.ratio"></a>ratio</h3><div class=CBody><p>{Float} The ratio property determines the size of the serverside query relative to the map viewport size.  By default, we load an area twice as big as the map, to allow for panning without immediately reload.  Setting this to 1 will cause the area of the WFS request to match the map area exactly.  It is recommended to set this to some number at l [...]
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.DEFAULT_PARAMS"></a>DEFAULT_PARAMS</h3><div class=CBody><p>{Object} Hashtable of default key/value parameters</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.featureClass"></a>featureClass</h3><div class=CBody><p>{<a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link312 onMouseOver="ShowTip(event, 'tt63', 'link312')" onMouseOut="HideTip('tt63')">OpenLayers.Feature</a>} If featureClass is defined, an old-style markers based WFS layer is created instead of a new-style vector layer.  If sent, this should be a subclass of OpenLayers [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.featureClass"></a>featureClass</h3><div class=CBody><p>{<a href="OpenLayers/Feature-js.html#OpenLayers.Feature" class=LClass id=link320 onMouseOver="ShowTip(event, 'tt63', 'link320')" onMouseOut="HideTip('tt63')">OpenLayers.Feature</a>} If featureClass is defined, an old-style markers based WFS layer is created instead of a new-style vector layer.  If sent, this should be a subclass of OpenLayers [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link313 onMouseOver="ShowTip(event, 'tt75', 'link313')" onMouseOut="HideTip('tt75')">OpenLayers.Format</a>} The format you want the data to be parsed with.  Must be passed in the constructor.  Should be a class, not an instance.  This option can only be used if no featureCla [...]
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link321 onMouseOver="ShowTip(event, 'tt75', 'link321')" onMouseOut="HideTip('tt75')">OpenLayers.Format</a>} The format you want the data to be parsed with.  Must be passed in the constructor.  Should be a class, not an instance.  This option can only be used if no featureCla [...]
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.formatObject"></a>formatObject</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link314 onMouseOver="ShowTip(event, 'tt75', 'link314')" onMouseOut="HideTip('tt75')">OpenLayers.Format</a>} Internally created/managed format object, used by the Tile to parse data.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.formatObject"></a>formatObject</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link322 onMouseOver="ShowTip(event, 'tt75', 'link322')" onMouseOut="HideTip('tt75')">OpenLayers.Format</a>} Internally created/managed format object, used by the Tile to parse data.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.formatOptions"></a>formatOptions</h3><div class=CBody><p>{Object} Hash of options which should be passed to the format when it is created.  Must be passed in the constructor.</p></div></div></div>
 
@@ -386,9 +386,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">destroy: function()</td></tr></table></blockquote></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=C [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 class=C [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td class= [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.moveTo"></a>moveTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>moveTo:function(</td><td class="PParameter  prettyprint " nowrap>bounds,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>zoomChanged,</td></tr><tr><td></td><td class= [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.addTileMonitoringHooks"></a>addTileMonitoringHooks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>addTileMonitoringHooks: function(</td><td class="PParameter  prettyprint " nowrap>tile</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
 
@@ -414,11 +414,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.refresh"></a>refresh</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">refresh: function()</td></tr></table></blockquote><p>Refreshes all the features of the layer</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.getDataExtent"></a>getDataExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getDataExtent: function ()</td></tr></table></blockquote><p>Calculates the max extent which includes all of the layer data.</p><h4 class=CHeading>Returns</h4><p>{<a href="OpenLayers/BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link31 [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.getDataExtent"></a>getDataExtent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getDataExtent: function ()</td></tr></table></blockquote><p>Calculates the max extent which includes all of the layer data.</p><h4 class=CHeading>Returns</h4><p>{<a href="OpenLayers/BaseTypes/Bounds-js.html#OpenLayers.Bounds" class=LClass id=link32 [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.WFS.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity: function (</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></block [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h2><div class=CBody><p><b>Deprecated</b>.  Use <a href="OpenLayers/Layer/Bing-js.html#OpenLayers.Layer.Bing" class=LClass id=link333 onMouseOver="ShowTip(event, 'tt201', 'link333')" onMouseOut="HideTip('tt201')">OpenLayers.Layer.Bing</a> instead.</p><p>Instances of OpenLayers.Layer.VirtualEarth are used to display the data from the Bing Maps AJA [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h2><div class=CBody><p><b>Deprecated</b>.  Use <a href="OpenLayers/Layer/Bing-js.html#OpenLayers.Layer.Bing" class=LClass id=link341 onMouseOver="ShowTip(event, 'tt209', 'link341')" onMouseOut="HideTip('tt209')">OpenLayers.Layer.Bing</a> instead.</p><p>Instances of OpenLayers.Layer.VirtualEarth are used to display the data from the Bing Maps AJA [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.Constants"></a>Constants</h3></div></div>
 
@@ -432,7 +432,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.type"></a>type</h3><div class=CBody><p>{VEMapType}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.VirtualEarth.sphericalMercator" class=LProperty id=link337 onMouseOver="ShowTip(event, 'tt205', 'link337')" onMouseOut="HideTip('tt205')">sphericalMercator</a> is true.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.VirtualEarth.sphericalMercator" class=LProperty id=link345 onMouseOver="ShowTip(event, 'tt213', 'link345')" onMouseOut="HideTip('tt213')">sphericalMercator</a> is true.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.sphericalMercator"></a>sphericalMercator</h3><div class=CBody><p>{Boolean} Should the map act as a mercator-projected map?  This will cause all interactions with the map to be in the actual map projection, which allows support for vector drawing, overlaying other maps, etc.</p></div></div></div>
 
@@ -440,7 +440,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h3><div class=CBody><p>Creates a new instance of a OpenLayers.Layer.VirtualEarth.  If you use an instance of OpenLayers.Layer.VirtualEarth in you map, you should set the <a href="OpenLayers/Map-js.html#OpenLayers.Map" class=LClass id=link338 onMouseOver="ShowTip(event, 'tt200', 'link338')" onMouseOut="HideTip( [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.OpenLayers.Layer.VirtualEarth"></a>OpenLayers.<wbr>Layer.<wbr>VirtualEarth</h3><div class=CBody><p>Creates a new instance of a OpenLayers.Layer.VirtualEarth.  If you use an instance of OpenLayers.Layer.VirtualEarth in you map, you should set the <a href="OpenLayers/Map-js.html#OpenLayers.Map" class=LClass id=link346 onMouseOver="ShowTip(event, 'tt208', 'link346')" onMouseOut="HideTip( [...]
     // other map options
     restrictedExtent : OpenLayers.Bounds(-20037508, -20037508, 20037508, 20037508)
 } );
@@ -483,7 +483,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.VirtualEarth.getMapObjectPixelFromXY"></a>getMapObjectPixelFromXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectPixelFromXY: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprin [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL"></a>OpenLayers.<wbr>Protocol.SQL</h2><div class=CBody><p>Abstract SQL protocol class.   Not to be instantiated directly.   Use one of the SQL protocol subclasses instead.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Protocol-js.html#OpenLayers.Protocol" class=LClass id=link342 onMouseOver="ShowTip(event, 'tt206', 'link342')" onMouseOut="HideTip('tt206')">OpenLayers.Pr [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL"></a>OpenLayers.<wbr>Protocol.SQL</h2><div class=CBody><p>Abstract SQL protocol class.   Not to be instantiated directly.   Use one of the SQL protocol subclasses instead.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Protocol-js.html#OpenLayers.Protocol" class=LClass id=link350 onMouseOver="ShowTip(event, 'tt214', 'link350')" onMouseOut="HideTip('tt214')">OpenLayers.Pr [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Properties"></a>Properties</h3></div></div>
 
@@ -503,9 +503,9 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.supported"></a>supported</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">supported: function()</td></tr></table></blockquote><p>This should be overridden by specific subclasses</p><h4 class=CHeading>Returns</h4><p>{Boolean} Whether or not the browser supports the SQL backend</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.evaluateFilter"></a>evaluateFilter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>evaluateFilter: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>filter</td><td c [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.evaluateFilter"></a>evaluateFilter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>evaluateFilter: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>filter</td><td c [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears"></a>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears</h2><div class=CBody><p>This Protocol stores feature in the browser via the Gears Database module <a href="http://code.google.com/apis/gears/api_database.html" class=LURL target=_top>http://code.google.com<wbr>/apis<wbr>/gears<wbr>/api_database.html</a>.</p><p>The main advantage is that all the read, create, update and delete operations can be do [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears"></a>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears</h2><div class=CBody><p>This Protocol stores feature in the browser via the Gears Database module <a href="http://code.google.com/apis/gears/api_database.html" class=LURL target=_top>http://code.google.com<wbr>/apis<wbr>/gears<wbr>/api_database.html</a>.</p><p>The main advantage is that all the read, create, update and delete operations can be do [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.Properties"></a>Properties</h3></div></div>
 
@@ -515,9 +515,9 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.NULL_FEATURE_STATE"></a>NULL_FEATURE_STATE</h3><div class=CBody><p>{String}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.jsonParser"></a>jsonParser</h3><div class=CBody><p>{<a href="OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON" class=LClass id=link365 onMouseOver="ShowTip(event, 'tt111', 'link365')" onMouseOut="HideTip('tt111')">OpenLayers.Format.JSON</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.jsonParser"></a>jsonParser</h3><div class=CBody><p>{<a href="OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON" class=LClass id=link373 onMouseOver="ShowTip(event, 'tt111', 'link373')" onMouseOut="HideTip('tt111')">OpenLayers.Format.JSON</a>}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.wktParser"></a>wktParser</h3><div class=CBody><p>{<a href="OpenLayers/Format/WKT-js.html#OpenLayers.Format.WKT" class=LClass id=link366 onMouseOver="ShowTip(event, 'tt112', 'link366')" onMouseOut="HideTip('tt112')">OpenLayers.Format.WKT</a>}</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.wktParser"></a>wktParser</h3><div class=CBody><p>{<a href="OpenLayers/Format/WKT-js.html#OpenLayers.Format.WKT" class=LClass id=link374 onMouseOver="ShowTip(event, 'tt112', 'link374')" onMouseOut="HideTip('tt112')">OpenLayers.Format.WKT</a>}</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.fidRegExp"></a>fidRegExp</h3><div class=CBody><p>{RegExp} Regular expression to know whether a feature was created in offline mode.</p></div></div></div>
 
@@ -539,33 +539,33 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.supported"></a>supported</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">supported: function()</td></tr></table></blockquote><p>Determine whether a browser supports Gears</p><h4 class=CHeading>Returns</h4><p>{Boolean} The browser supports Gears</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>R [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.read"></a>read</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>read: function(</td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>R [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.unfreezeFeature"></a>unfreezeFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unfreezeFeature: function(</td><td class="PParameter  prettyprint " nowrap>row</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.unfreezeFeature"></a>unfreezeFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>unfreezeFeature: function(</td><td class="PParameter  prettyprint " nowrap>row</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td>< [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.extractFidFromField"></a>extractFidFromField</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>extractFidFromField: function(</td><td class="PParameter  prettyprint " nowrap>field</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.create"></a>create</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>create: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.create"></a>create</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>create: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.update"></a>update</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>update: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.update"></a>update</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>update: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.createOrUpdate"></a>createOrUpdate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createOrUpdate: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.createOrUpdate"></a>createOrUpdate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createOrUpdate: function(</td><td class="PParameter  prettyprint " nowrap>features</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.freezeFeature"></a>freezeFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>freezeFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.freezeFeature"></a>freezeFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>freezeFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.getFeatureStateForFreeze"></a>getFeatureStateForFreeze</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatureStateForFreeze: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "n [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.getFeatureStateForFreeze"></a>getFeatureStateForFreeze</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatureStateForFreeze: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "n [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.delete"></a>delete</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>"delete": function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.delete"></a>delete</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>"delete": function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.createdOffline"></a>createdOffline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createdOffline: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.createdOffline"></a>createdOffline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>createdOffline: function(</td><td class="PParameter  prettyprint " nowrap>feature</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.commit"></a>commit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>commit: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.commit"></a>commit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>commit: function(</td><td class="PParameter  prettyprint " nowrap>features,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>options</td><td class="PAfterPara [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.clear"></a>clear</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">clear: function()</td></tr></table></blockquote><p>Removes all rows of the table.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.callUserCallback"></a>callUserCallback</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>callUserCallback: function(</td><td class="PParameter  prettyprint " nowrap>options,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>resp [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Protocol.SQL.Gears.callUserCallback"></a>callUserCallback</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>callUserCallback: function(</td><td class="PParameter  prettyprint " nowrap>options,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>resp [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Yahoo"></a>OpenLayers.<wbr>Layer.<wbr>Yahoo</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/EventPane-js.html#OpenLayers.Layer.EventPane" class=LClass id=link414 onMouseOver="ShowTip(event, 'tt203', 'link414')" onMouseOut="HideTip('tt203')">OpenLayers.Layer.EventPane</a></li><li><a href="OpenLayers/Layer/FixedZoomLevels-js.html#OpenLayers.Layer.FixedZoomLevels" cla [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.Yahoo"></a>OpenLayers.<wbr>Layer.<wbr>Yahoo</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Layer/EventPane-js.html#OpenLayers.Layer.EventPane" class=LClass id=link422 onMouseOver="ShowTip(event, 'tt211', 'link422')" onMouseOut="HideTip('tt211')">OpenLayers.Layer.EventPane</a></li><li><a href="OpenLayers/Layer/FixedZoomLevels-js.html#OpenLayers.Layer.FixedZoomLevels" cla [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.Constants"></a>Constants</h3></div></div>
 
@@ -579,7 +579,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.type"></a>type</h3><div class=CBody><p>{YahooMapType}</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.Yahoo.sphericalMercator" class=LProperty id=link416 onMouseOver="ShowTip(event, 'tt210', 'link416')" onMouseOut="HideTip('tt210')">sphericalMercator</a> is true.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.wrapDateLine"></a>wrapDateLine</h3><div class=CBody><p>{Boolean} Allow user to pan forever east/west.   Default is true.  Setting this to false only restricts panning if <a href="#OpenLayers.Layer.Yahoo.sphericalMercator" class=LProperty id=link424 onMouseOver="ShowTip(event, 'tt218', 'link424')" onMouseOut="HideTip('tt218')">sphericalMercator</a> is true.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.sphericalMercator"></a>sphericalMercator</h3><div class=CBody><p>{Boolean} Should the map act as a mercator-projected map?  This will cause all interactions with the map to be in the actual map projection, which allows support for vector drawing, overlaying other maps, etc.</p></div></div></div>
 
@@ -593,7 +593,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.onMapResize"></a>onMapResize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">onMapResize: function()</td></tr></table></blockquote></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Overri [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.setMap"></a>setMap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setMap: function(</td><td class="PParameter  prettyprint " nowrap>map</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Overri [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.fixYahooEventPane"></a>fixYahooEventPane</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">fixYahooEventPane: function()</td></tr></table></blockquote><p>The map has been centered, so the mysterious yahoo eventpane has been added. we remove it so that it doesnt mess with <b>our</b> event pane.</p></div></div></div>
 
@@ -627,15 +627,15 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getMapObjectPixelFromXY"></a>getMapObjectPixelFromXY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectPixelFromXY: function(</td><td class="PParameter  prettyprint " nowrap>x,</td></tr><tr><td></td><td class="PParameter  prettyprint " now [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getMapObjectSizeFromOLSize"></a>getMapObjectSizeFromOLSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectSizeFromOLSize: function(</td><td class="PParameter  prettyprint " nowrap>olSize</td><td class="PAfterParameters  prettyprint "now [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.Yahoo.getMapObjectSizeFromOLSize"></a>getMapObjectSizeFromOLSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getMapObjectSizeFromOLSize: function(</td><td class="PParameter  prettyprint " nowrap>olSize</td><td class="PAfterParameters  prettyprint "now [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.GML"></a>OpenLayers.<wbr>Layer.GML</h2><div class=CBody><p>Create a vector layer by parsing a GML file.  The GML file is passed in as a parameter.  <b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with Protocol.HTTP and Strategy.Fixed.  Provide the protocol with a format parameter to get the parser you want for your data.</p><h4 class=CHeading>Inherits [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Layer.GML"></a>OpenLayers.<wbr>Layer.GML</h2><div class=CBody><p>Create a vector layer by parsing a GML file.  The GML file is passed in as a parameter.  <b>Deprecated</b>.   To be removed in 3.0.   Instead use OpenLayers.Layer.Vector with Protocol.HTTP and Strategy.Fixed.  Provide the protocol with a format parameter to get the parser you want for your data.</p><h4 class=CHeading>Inherits [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.Properties"></a>Properties</h3></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.loaded"></a>loaded</h3><div class=CBody><p>{Boolean} Flag for whether the GML data has been loaded yet.</p></div></div></div>
 
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link427 onMouseOver="ShowTip(event, 'tt75', 'link427')" onMouseOut="HideTip('tt75')">OpenLayers.Format</a>} The format you want the data to be parsed with.</p></div></div></div>
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.format"></a>format</h3><div class=CBody><p>{<a href="OpenLayers/Format-js.html#OpenLayers.Format" class=LClass id=link435 onMouseOver="ShowTip(event, 'tt75', 'link435')" onMouseOut="HideTip('tt75')">OpenLayers.Format</a>} The format you want the data to be parsed with.</p></div></div></div>
 
 <div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.formatOptions"></a>formatOptions</h3><div class=CBody><p>{Object} Hash of options which should be passed to the format when it is created.  Must be passed in the constructor.</p></div></div></div>
 
@@ -657,7 +657,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Layer.GML.requestFailure"></a>requestFailure</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>requestFailure: function(</td><td class="PParameter  prettyprint " nowrap>request</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ta [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h2><div class=CBody><p>This class is <b>not supported</b>, and probably isn’t what you’re looking for.  Instead, most users probably want something like:</p><blockquote><pre class="prettyprint">var poly = new OpenLayers.Bounds(0,0,10,10).toGeometry();</pre></blockquote><p>This will create a rectangular Polygon geometry.</p><h4 class= [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h2><div class=CBody><p>This class is <b>not supported</b>, and probably isn’t what you’re looking for.  Instead, most users probably want something like:</p><blockquote><pre class="prettyprint">var poly = new OpenLayers.Bounds(0,0,10,10).toGeometry();</pre></blockquote><p>This will create a rectangular Polygon geometry.</p><h4 class= [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.Properties"></a>Properties</h3></div></div>
 
@@ -671,7 +671,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.Constructor"></a>Constructor</h3></div></div>
 
-<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>points</td><td class=CDLDescription>{Array(<a href="OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link432 onMouseOver="ShowTip(event, 'tt213' [...]
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.OpenLayers.Geometry.Rectangle"></a>OpenLayers.<wbr>Geometry.<wbr>Rectangle</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>points</td><td class=CDLDescription>{Array(<a href="OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link440 onMouseOver="ShowTip(event, 'tt221' [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.Functions"></a>Functions</h3></div></div>
 
@@ -681,7 +681,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Geometry.Rectangle.getArea"></a>getArea</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getArea: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{Float} The area of the geometry</p></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.NG"></a>OpenLayers.<wbr>Renderer.NG</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Renderer/Elements-js.html#OpenLayers.Renderer.Elements" class=LClass id=link436 onMouseOver="ShowTip(event, 'tt214', 'link436')" onMouseOut="HideTip('tt214')">OpenLayers.Renderer.Elements</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=S [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.NG"></a>OpenLayers.<wbr>Renderer.NG</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Renderer/Elements-js.html#OpenLayers.Renderer.Elements" class=LClass id=link444 onMouseOver="ShowTip(event, 'tt222', 'link444')" onMouseOut="HideTip('tt222')">OpenLayers.Renderer.Elements</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=S [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.Constants"></a>Constants</h3></div></div>
 
@@ -697,11 +697,11 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.resize"></a>resize</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.drawFeature"></a>drawFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style</td><td class="PAfte [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.drawFeature"></a>drawFeature</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawFeature: function(</td><td class="PParameter  prettyprint " nowrap>feature,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style</td><td class="PAfte [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.drawText"></a>drawText</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawText: function(</td><td class="PParameter  prettyprint " nowrap>featureId,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td  [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.NG.drawText"></a>drawText</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawText: function(</td><td class="PParameter  prettyprint " nowrap>featureId,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td  [...]
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.SVG2"></a>OpenLayers.<wbr>Renderer.SVG2</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="#OpenLayers.Renderer.NG" class=LClass >OpenLayers.Renderer.NG</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Renderer.SVG [...]
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Renderer.SVG2"></a>OpenLayers.<wbr>Renderer.SVG2</h2><div class=CBody><h4 class=CHeading>Inherits from</h4><ul><li><a href="#OpenLayers.Renderer.NG" class=LClass >OpenLayers.Renderer.NG</a></li></ul><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#OpenLayers.Renderer.SVG [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.Properties"></a>Properties</h3></div></div>
 
@@ -725,7 +725,7 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.updateDimensions"></a>updateDimensions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>updateDimensions: function(</td><td class="PParameter  prettyprint " nowrap>zoomChanged</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table> [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getNodeType"></a>getNodeType</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNodeType: function(</td><td class="PParameter  prettyprint " nowrap>geometry,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style</td><td class="PA [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getNodeType"></a>getNodeType</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getNodeType: function(</td><td class="PParameter  prettyprint " nowrap>geometry,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style</td><td class="PA [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.setStyle"></a>setStyle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setStyle: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td cla [...]
 
@@ -741,27 +741,27 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.createDefs"></a>createDefs</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">createDefs: function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{DOMElement} The element to which we’ll add the symbol definitions</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawPoint"></a>drawPoint</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawPoint: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterPar [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawPoint"></a>drawPoint</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawPoint: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAfterPar [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawCircle"></a>drawCircle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawCircle: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry,</td></tr><tr><td></t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawCircle"></a>drawCircle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawCircle: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry,</td></tr><tr><td></t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawLineString"></a>drawLineString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawLineString: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td c [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawLineString"></a>drawLineString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawLineString: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td c [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawLinearRing"></a>drawLinearRing</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawLinearRing: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td c [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawLinearRing"></a>drawLinearRing</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawLinearRing: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td c [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawPolygon"></a>drawPolygon</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawPolygon: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAf [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawPolygon"></a>drawPolygon</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawPolygon: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td class="PAf [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawRectangle"></a>drawRectangle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawRectangle: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td clas [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawRectangle"></a>drawRectangle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawRectangle: function(</td><td class="PParameter  prettyprint " nowrap>node,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>geometry</td><td clas [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawText"></a>drawText</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawText: function(</td><td class="PParameter  prettyprint " nowrap>featureId,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.drawText"></a>drawText</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>drawText: function(</td><td class="PParameter  prettyprint " nowrap>featureId,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getComponentString"></a>getComponentString</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>components</td><td class=CDLDescription>{Array(<a href="OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link468 onMouseOver="ShowTip(event, 'tt213', 'link468')" onMouseOut="HideTip('t [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getComponentString"></a>getComponentString</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>components</td><td class=CDLDescription>{Array(<a href="OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point" class=LClass id=link476 onMouseOver="ShowTip(event, 'tt221', 'link476')" onMouseOut="HideTip('t [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getShortString"></a>getShortString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getShortString: function(</td><td class="PParameter  prettyprint " nowrap>point</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getShortString"></a>getShortString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getShortString: function(</td><td class="PParameter  prettyprint " nowrap>point</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></ [...]
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.importSymbol"></a>importSymbol</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>importSymbol: function (</td><td class="PParameter  prettyprint " nowrap>graphicName</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr>< [...]
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getFeatureIdFromEvent"></a>getFeatureIdFromEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatureIdFromEvent: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.getFeatureIdFromEvent"></a>getFeatureIdFromEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>getFeatureIdFromEvent: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr>< [...]
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.Constants"></a>Constants</h3></div></div>
 
@@ -775,21 +775,53 @@ map.addLayer( veLayer );</pre></blockquote><h4 class=CHeading>Parameters</h4><ta
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Renderer.SVG2.OpenLayers.Renderer.SVG2.preventDefault"></a>OpenLayers.<wbr>Renderer.<wbr>SVG2.<wbr>preventDefault</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Renderer.SVG2.preventDefault = function(</td><td class="PParameter  prettyprint " nowrap [...]
 
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h2><div class=CBody><p>This class is <b>deprecated</b>.  Use {<a href="OpenLayers/Popup/Anchored-js.html#OpenLayers.Popup.Anchored" class=LClass >OpenLayers.Popup.Anchored</a>} and round corners using CSS3’s border-radius property.</p><h4 class=CHeading>Inherits from</h4><ul><li><a href="OpenLayers/Popup/Anchored-js.html#OpenLayers.Pop [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Properties"></a>Properties</h3></div></div>
+
+<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.rounded"></a>rounded</h3><div class=CBody><p>{Boolean} Has the popup been rounded yet?</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constructor"></a>Constructor</h3></div></div>
+
+<div class="CConstructor"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.OpenLayers.Popup.AnchoredBubble"></a>OpenLayers.<wbr>Popup.<wbr>AnchoredBubble</h3><div class=CBody><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>{String}</td></tr><tr><td class=CDLEntry>lonlat</td><td class=CDLDescription>{<a href="OpenLayers/BaseTypes/LonLat-js.html#OpenLayers. [...]
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Functions"></a>Functions</h3></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>draw: function(</td><td class="PParameter  prettyprint " nowrap>px</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><h4 cla [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.updateRelativePosition"></a>updateRelativePosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">updateRelativePosition: function()</td></tr></table></blockquote><p>The popup has been moved to a new relative location, in which case we will want to re-do the rico corners.</p></div></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setSize"></a>setSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setSize:function(</td><td class="PParameter  prettyprint " nowrap>contentSize</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></b [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setBackgroundColor"></a>setBackgroundColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBackgroundColor:function(</td><td class="PParameter  prettyprint " nowrap>color</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setOpacity"></a>setOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setOpacity:function(</td><td class="PParameter  prettyprint " nowrap>opacity</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></tabl [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setBorder"></a>setBorder</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>setBorder:function(</td><td class="PParameter  prettyprint " nowrap>border</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></ [...]
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.setRicoCorners"></a>setRicoCorners</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">setRicoCorners:function()</td></tr></table></blockquote><p>Update RICO corners according to the popup’s current relative postion.</p></div></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.getCornersToRound"></a>getCornersToRound</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">getCornersToRound:function()</td></tr></table></blockquote><h4 class=CHeading>Returns</h4><p>{String} The proper corners string (“tr tl bl br”) for rico to round.</p></div></div></div>
+
+<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.Constants"></a>Constants</h3></div></div>
+
+<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="OpenLayers.Popup.AnchoredBubble.CORNER_SIZE"></a>CORNER_SIZE</h3><div class=CBody><p>{Integer} 5.  Border space for the RICO corners.</p></div></div></div>
+
 </div><!--Content-->
 
 
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEnt [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div class=MEnt [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([32], 34);// --></script></div><!--Menu-->
+HideAllBut([35], 37);// --></script></div><!--Menu-->
 
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Class.inherit = function (</td><td class="PParameter  prettyprint " nowrap>P</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="tt2"><div class= [...]
+<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Class.inherit = function (</td><td class="PParameter  prettyprint " nowrap>P</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="tt2"><div class= [...]
 
 
 
diff --git a/doc/devdocs/index/Classes.html b/doc/devdocs/index/Classes.html
index 9d96824..12934b8 100644
--- a/doc/devdocs/index/Classes.html
+++ b/doc/devdocs/index/Classes.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Class Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · <a href="#O">O</a> · P · Q · R · <a href="Classes2.html#S">S</a> · T · <a href="Classes2.html#U">U</a> · V · W · X · Y · Z</div><table border=0 cellspacing= [...]
+<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · <a href="#C">C</a> · D · E · F · G · H · I · J · K · L · M · N · <a href="#O">O</a> · P · Q · R · <a href="Classes2.html#S">S</a> · T · <a href="Classes2.html#U">U</a> · V · W · X · Y · Z</div><table bord [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>The OpenLayers object provides a namespace for all things OpenLayers</div></div><div class=CToolTip id="tt2"><div class=CClass><b>Deprecated</b>. </div></div><div class=CToolTip id="tt3"><div class=CClass>{Object}</div></div><div class=CToolTip id="tt4"><div class=CClass>A collection of utility functions for executing methods that repaint a portion of the browser window. </div></div><div class=CToolTip id="tt5"><div class=CClass>Contains con [...]
+<!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><div class=CClass>The OpenLayers object provides a namespace for all things OpenLayers</div></div><div class=CToolTip id="tt2"><div class=CClass><b>Deprecated</b>. </div></div><div class=CToolTip id="tt3"><div class=CClass>{Object}</div></div><div class=CToolTip id="tt4"><div class=CClass>A collection of utility functions for executing methods that repaint a portion of the browser window. </div></div><div class=CToolTip id="tt5"><div class=CClass>Contains con [...]
 
 </div><!--Index-->
 
@@ -21,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Classes2.html b/doc/devdocs/index/Classes2.html
index 9633786..56e3f54 100644
--- a/doc/devdocs/index/Classes2.html
+++ b/doc/devdocs/index/Classes2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Class Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · <a href="Classes.html#O">O</a> · P · Q · R · <a href="#S">S</a> · T · <a href="#U">U</a> · V · W · X · Y · Z</div><table border=0 cellspacing=0 cellpadding= [...]
+<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! · 0-9 · A · B · <a href="Classes.html#C">C</a> · D · E · F · G · H · I · J · K · L · M · N · <a href="Classes.html#O">O</a> · P · Q · R · <a href="#S">S</a> · T · <a href="#U">U</a> · V · W · X · Y · Z</div><table border [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt299"><div class=CClass>The OpenLayers.Spherical namespace includes utility functions for calculations on the basis of a spherical earth (ignoring ellipsoidal effects), which is accurate enough for most purposes.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt314"><div class=CClass>The OpenLayers.Spherical namespace includes utility functions for calculations on the basis of a spherical earth (ignoring ellipsoidal effects), which is accurate enough for most purposes.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Constants.html b/doc/devdocs/index/Constants.html
index ccc90a1..950fe3c 100644
--- a/doc/devdocs/index/Constants.html
+++ b/doc/devdocs/index/Constants.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constant Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constant Index</div><div class=INavigationBar>$#! · 0-9 · A · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · E · <a href="#F">F</a> · G · H · <a href="#I">I</a> · J · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · N · <a href="#O">O</a> · P · Q · <a href="#R">R</a> · <a href="#S">S</ [...]
+<div id=Index><div class=IPageTitle>Constant Index</div><div class=INavigationBar>$#! · 0-9 · A · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · E · <a href="#F">F</a> · G · H · <a href="#I">I</a> · J · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · N · <a href="#O">O</a> · P · Q · <a href="#R">R</a> · <a href="#S">S</ [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt2"><div class=CConstant>{Array(String)} supported events</div></div><div class=CToolTip id="tt3"><div class=CConstant>{String} A substring of the navigator.userAgent property. </div></div><!--END_ND_TOOLTIPS-->
 
@@ -29,55 +29,55 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt24"><div class=CConstant>Mixin for tiles that use form-encoded POST requests to get images from remote services. </div></div><div class=CToolTip id="tt25"><div class=CConstant>{Object} Simple hash map to convert format to extension.</div></div><div class=CToolTip id="tt26"><div class=CConstant>{Object} Constant inches per unit -- borrowed from MapServer mapscale.c derivation of nautical miles from http://en.wikipedia.org/wiki/Nautical_mile Includes the full set  [...]
+<div class=CToolTip id="tt24"><div class=CConstant>Mixin for tiles that use form-encoded POST requests to get images from remote services. </div></div><div class=CToolTip id="tt25"><div class=CConstant>{HTMLImageElement} The image for a tile.</div></div><div class=CToolTip id="tt26"><div class=CConstant>{Object} Simple hash map to convert format to extension.</div></div><div class=CToolTip id="tt27"><div class=CConstant>{Object} Constant inches per unit -- borrowed from MapServer mapscal [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt28"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt29"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt30"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt31"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt32"><div class=CConstant>keydown, keypress, keyup</div></div><div class=CToolTip id="tt33"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt34"><div class=CConstant>{int}</div></d [...]
+<div class=CToolTip id="tt29"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt30"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt31"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt32"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt33"><div class=CConstant>keydown, keypress, keyup</div></div><div class=CToolTip id="tt34"><div class=CConstant>{int}</div></div><div class=CToolTip id="tt35"><div class=CConstant>{int}</div></d [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt39"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt40"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt41"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt42"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt43"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt44"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt45"><div class=CConstant>{Object}</div>< [...]
+<div class=CToolTip id="tt40"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt41"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt42"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt43"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt44"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt45"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt46"><div class=CConstant>{Object}</div>< [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt52"><div class=CConstant>{Integer} Firefox has a limitation where values larger or smaller than about 15000 in an SVG document lock the browser up. </div></div><div class=CToolTip id="tt53"><div class=CConstant>{Integer} 21</div></div><div class=CToolTip id="tt54"><div class=CConstant>{Integer} 19</div></div><div class=CToolTip id="tt55"><div class=CConstant>{Integer} 17</div></div><div class=CToolTip id="tt56"><div class=CConstant>{Integer} 0</div></div><div cl [...]
+<div class=CToolTip id="tt53"><div class=CConstant>{Integer} Firefox has a limitation where values larger or smaller than about 15000 in an SVG document lock the browser up. </div></div><div class=CToolTip id="tt54"><div class=CConstant>{Integer} 21</div></div><div class=CToolTip id="tt55"><div class=CConstant>{Integer} 19</div></div><div class=CToolTip id="tt56"><div class=CConstant>{Integer} 17</div></div><div class=CToolTip id="tt57"><div class=CConstant>{Integer} 0</div></div><div cl [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt63"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt65"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt64"><div class=CConstant>{Integer} Constant used to make the control work in reshape mode</div></div><div class=CToolTip id="tt65"><div class=CConstant>{Integer} Constant used to make the control work in resize mode</div></div><div class=CToolTip id="tt66"><div class=CConstant>{Array} The properties that are used for calculating resolutions information.</div></div><div class=CToolTip id="tt67"><div class=CConstant>{Array(Float)} Hardcode these resolutions so tha [...]
+<div class=CToolTip id="tt66"><div class=CConstant>{Integer} Constant used to make the control work in reshape mode</div></div><div class=CToolTip id="tt67"><div class=CConstant>{Integer} Constant used to make the control work in resize mode</div></div><div class=CToolTip id="tt68"><div class=CConstant>{Array} The properties that are used for calculating resolutions information.</div></div><div class=CToolTip id="tt69"><div class=CConstant>{Array(Float)} Hardcode these resolutions so tha [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt71"><div class=CConstant>Enumeration for service types</div></div><div class=CToolTip id="tt72"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><div class=CToolTip id="tt73"><div class=CConstant>TODO: remove this in 3.0 when we stop supporting build profiles that include OpenLayers.js</div></div><div class=CToolTip id="tt74"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and  [...]
+<div class=CToolTip id="tt73"><div class=CConstant>Enumeration for service types</div></div><div class=CToolTip id="tt74"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for untiled layer</div></div><div class=CToolTip id="tt75"><div class=CConstant>TODO: remove this in 3.0 when we stop supporting build profiles that include OpenLayers.js</div></div><div class=CToolTip id="tt76"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt78"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt79"><div class=CConstant>{Integer} 256 Default tile height (unless otherwise specified)</div></div><div class=CToolTip id="tt80"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for tiled layer</div></div><div class=CToolTip id="tt81"><div class=CConstant>{Integer} 256 Default  [...]
+<div class=CToolTip id="tt80"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt81"><div class=CConstant>{Integer} 256 Default tile height (unless otherwise specified)</div></div><div class=CToolTip id="tt82"><div class=CConstant>{Object} Hashtable of default parameter key/value pairs for tiled layer</div></div><div class=CToolTip id="tt83"><div class=CConstant>{Integer} 256 Default  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt82"><div class=CConstant>{Float} Used to hash URL param strings for multi-WMS server selection. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt84"><div class=CConstant>{Float} Used to hash URL param strings for multi-WMS server selection. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt83"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v2.</div></div><div class=CToolTip id="tt84"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v3.</div></div><div class=CToolTip id="tt85"><div class=CConstant>{String} 1.0.0</div></div><div class=CToolTip id="tt86"><div class=CConstant>{String} 1.1.0</div></div><div class=CToolTip id="tt87"><div class=CConstant>{String} 0.3.1</div></div><div  [...]
+<div class=CToolTip id="tt85"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v2.</div></div><div class=CToolTip id="tt86"><div class=CConstant>Mixin providing functionality specific to the Google Maps API v3.</div></div><div class=CToolTip id="tt87"><div class=CConstant>{String} 1.0.0</div></div><div class=CToolTip id="tt88"><div class=CConstant>{String} 1.1.0</div></div><div class=CToolTip id="tt89"><div class=CConstant>{String} 0.3.1</div></div><div  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt97"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt100"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt98"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt101"><div class=CConstant>{Integer}</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt99"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt102"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -85,10 +85,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Constructor.html b/doc/devdocs/index/Constructor.html
index 6b09dd3..37ad108 100644
--- a/doc/devdocs/index/Constructor.html
+++ b/doc/devdocs/index/Constructor.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constructor Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · <a href="#E">E</a> · <a href="#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · <a href="#N">N</a [...]
+<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="#C">C</a> · <a href="#D">D</a> · <a href="#E">E</a> · <a href="#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="#I">I</a> · <a href="#J">J</a> · <a href="#K">K</a> · <a href="#L">L</a> · <a href="#M">M</a> · <a href="#N">N</a [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CConstructor>Create a new ArcGIS93Rest layer object.</div></div><div class=CToolTip id="tt2"><div class=CConstructor>Creates a new instance of this class</div></div><div class=CToolTip id="tt3"><div class=CConstructor>Create a new ArcIMS layer object.</div></div><div class=CToolTip id="tt4"><div class=CConstructor>Create a new parser/writer for ArcXML. </div></div><div class=CToolTip id="tt5"><div class=CConstructor>Create a new parser for Atom.</d [...]
 
@@ -21,55 +21,55 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt11"><div class=CConstructor>Create a new click handler.</div></div><div class=CToolTip id="tt12"><div class=CConstructor>Create a new clustering strategy.</div></div><div class=CToolTip id="tt13"><div class=CConstructor>Creates a Geometry Collection -- a list of geoms.</div></div><div class=CToolTip id="tt14"><div class=CConstructor>Creates a comparison rule.</div></div><div class=CToolTip id="tt15"><div class=CConstructor>Create a new parser for Context documen [...]
+<div class=CToolTip id="tt11"><div class=CConstructor>Base class used to construct all other classes. </div></div><div class=CToolTip id="tt12"><div class=CConstructor>Create a new click handler.</div></div><div class=CToolTip id="tt13"><div class=CConstructor>Create a new clustering strategy.</div></div><div class=CToolTip id="tt14"><div class=CConstructor>Creates a Geometry Collection -- a list of geoms.</div></div><div class=CToolTip id="tt15"><div class=CConstructor>Creates a compari [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt17"><div class=CConstructor>Returns OpenLayers.Handler.Drag</div></div><div class=CToolTip id="tt18"><div class=CConstructor>Create a new control to drag features.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt18"><div class=CConstructor>Returns OpenLayers.Handler.Drag</div></div><div class=CToolTip id="tt19"><div class=CConstructor>Create a new control to drag features.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt19"><div class=CConstructor>Create an editing toolbar for a given layer.</div></div><div class=CToolTip id="tt20"><div class=CConstructor>Create a new event pane layer</div></div><div class=CToolTip id="tt21"><div class=CConstructor>Construct an OpenLayers.Events object.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt20"><div class=CConstructor>Create an editing toolbar for a given layer.</div></div><div class=CToolTip id="tt21"><div class=CConstructor>Create a new parser for encoded polylines</div></div><div class=CToolTip id="tt22"><div class=CConstructor>Create a new event pane layer</div></div><div class=CToolTip id="tt23"><div class=CConstructor>Construct an OpenLayers.Events object.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt22"><div class=CConstructor>Constructor for features.</div></div><div class=CToolTip id="tt23"><div class=CConstructor>Creates an ogc:FeatureId rule.</div></div><div class=CToolTip id="tt24"><div class=CConstructor>Create a new parser/writer for ArcXML Features. </div></div><div class=CToolTip id="tt25"><div class=CConstructor>This class represents a generic filter.</div></div><div class=CToolTip id="tt26"><div class=CConstructor>Create a new filter strategy.</d [...]
+<div class=CToolTip id="tt24"><div class=CConstructor>Constructor for features.</div></div><div class=CToolTip id="tt25"><div class=CConstructor>Create a new featureclick event type.</div></div><div class=CToolTip id="tt26"><div class=CConstructor>Creates an ogc:FeatureId rule.</div></div><div class=CToolTip id="tt27"><div class=CConstructor>Create a new parser/writer for ArcXML Features. </div></div><div class=CToolTip id="tt28"><div class=CConstructor>This class represents a generic fi [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt31"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt32"><div class=CConstructor>Create a new control to deal with browser geolocation API</div></div><div class=CToolTip id="tt33"><div class=CConstructor>Creates a geometry object.</div></div><div class=CToolTip id="tt34"><div class=CConstructor>Create a new parser for GeoRSS.</div></div><div class=CToolTip id="tt35"><div class=CConstructor>Create a GeoRSS Layer.</div> [...]
+<div class=CToolTip id="tt34"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt35"><div class=CConstructor>Create a new control to deal with browser geolocation API</div></div><div class=CToolTip id="tt36"><div class=CConstructor>Creates a geometry object.</div></div><div class=CToolTip id="tt37"><div class=CConstructor>Create a new parser for GeoRSS.</div></div><div class=CToolTip id="tt38"><div class=CConstructor>Create a GeoRSS Layer.</div> [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt42"><div class=CConstructor>Construct a handler.</div></div><div class=CToolTip id="tt43"><div class=CConstructor>Construct a hover handler.</div></div><div class=CToolTip id="tt44"><div class=CConstructor>A class for giving layers generic HTTP protocol.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt45"><div class=CConstructor>Construct a handler.</div></div><div class=CToolTip id="tt46"><div class=CConstructor>Construct a hover handler.</div></div><div class=CToolTip id="tt47"><div class=CConstructor>A class for giving layers generic HTTP protocol.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt45"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt46"><div class=CConstructor>Create a new image layer</div></div><div class=CToolTip id="tt47"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt48"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt49"><div class=CConstructor>Create a new image layer</div></div><div class=CToolTip id="tt50"><div class=CConstructor>Constructor for a new OpenLayers.Tile.Image instance.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt48"><div class=CConstructor>Create a new parser for JSON.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt51"><div class=CConstructor>Create a new parser for JSON.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt49"><div class=CConstructor>Returns a new keyboard handler.</div></div><div class=CToolTip id="tt50"><div class=CConstructor>Create a new parser for KML.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt52"><div class=CConstructor>Returns a new keyboard handler.</div></div><div class=CToolTip id="tt53"><div class=CConstructor>Create a new parser for KML.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt51"><div class=CConstructor>Create a symbolizer for rendering lines.</div></div><div class=CToolTip id="tt52"><div class=CConstructor>Linear rings are constructed with an array of points. </div></div><div class=CToolTip id="tt53"><div class=CConstructor>Create a new LineString geometry</div></div><div class=CToolTip id="tt54"><div class=CConstructor>Creates a logical filter (And, Or, Not).</div></div><div class=CToolTip id="tt55"><div class=CConstructor>Create a [...]
+<div class=CToolTip id="tt54"><div class=CConstructor>Create a symbolizer for rendering lines.</div></div><div class=CToolTip id="tt55"><div class=CConstructor>Linear rings are constructed with an array of points. </div></div><div class=CToolTip id="tt56"><div class=CConstructor>Create a new LineString geometry</div></div><div class=CToolTip id="tt57"><div class=CConstructor>Creates a logical filter (And, Or, Not).</div></div><div class=CToolTip id="tt58"><div class=CConstructor>Create a [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt56"><div class=CConstructor>Constructor for a new OpenLayers.Map instance. </div></div><div class=CToolTip id="tt57"><div class=CConstructor>Create a new Mapguide layer, either tiled or untiled.</div></div><div class=CToolTip id="tt58"><div class=CConstructor>Create a new MapServer layer object</div></div><div class=CToolTip id="tt59"><div class=CConstructor>Create a Markers layer.</div></div><div class=CToolTip id="tt60"><div class=CConstructor>Create a new mod [...]
+<div class=CToolTip id="tt59"><div class=CConstructor>Constructor for a new OpenLayers.Map instance. </div></div><div class=CToolTip id="tt60"><div class=CConstructor>Create a new Mapguide layer, either tiled or untiled.</div></div><div class=CToolTip id="tt61"><div class=CConstructor>Create a new MapServer layer object</div></div><div class=CToolTip id="tt62"><div class=CConstructor>Create a Markers layer.</div></div><div class=CToolTip id="tt63"><div class=CConstructor>Create a new mod [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt64"><div class=CConstructor>Create a new navigation control</div></div><div class=CToolTip id="tt65"><div class=CConstructor>Add our two mousedefaults controls.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt67"><div class=CConstructor>Create a new navigation control</div></div><div class=CToolTip id="tt68"><div class=CConstructor>Add our two mousedefaults controls.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt66"><div class=CConstructor>Create a new parser for OGC exception reports.</div></div><div class=CToolTip id="tt67"><div class=CConstructor>Base class used to construct all other classes. </div></div><div class=CToolTip id="tt68"><div class=CConstructor>Create a new parser for OSM.</div></div><div class=CToolTip id="tt69"><div class=CConstructor>Create a new overview map</div></div><div class=CToolTip id="tt70"><div class=CConstructor>Create a new parser for OWS [...]
+<div class=CToolTip id="tt69"><div class=CConstructor>Create a new parser for OGC exception reports.</div></div><div class=CToolTip id="tt70"><div class=CConstructor>Create a new parser for OSM.</div></div><div class=CToolTip id="tt71"><div class=CConstructor>Create a new overview map</div></div><div class=CToolTip id="tt72"><div class=CConstructor>Create a new parser for OWSCommon.</div></div><div class=CToolTip id="tt73"><div class=CConstructor>Create a new parser for OWS Context docum [...]
 
 </div><!--Index-->
 
@@ -77,10 +77,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Constructor2.html b/doc/devdocs/index/Constructor2.html
index 0982e80..8ea910e 100644
--- a/doc/devdocs/index/Constructor2.html
+++ b/doc/devdocs/index/Constructor2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constructor Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,29 +11,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
+<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt72"><div class=CConstructor>Create a new paging strategy.</div></div><div class=CToolTip id="tt73"><div class=CConstructor>Control which handles the panning (in any of the cardinal directions) of the map by a set px distance.</div></div><div class=CToolTip id="tt74"><div class=CConstructor>Create a new control panel.</div></div><div class=CToolTip id="tt75"><div class=CConstructor>Add the four directional pan buttons.</div></div><div class=CToolTip id="tt76"><di [...]
+<div class=CToolTip id="tt74"><div class=CConstructor>Create a new paging strategy.</div></div><div class=CToolTip id="tt75"><div class=CConstructor>Control which handles the panning (in any of the cardinal directions) of the map by a set px distance.</div></div><div class=CToolTip id="tt76"><div class=CConstructor>Create a new control panel.</div></div><div class=CToolTip id="tt77"><div class=CConstructor>Add the four directional pan buttons.</div></div><div class=CToolTip id="tt78"><di [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt92"><div class=CConstructor>Create a symbolizer for rendering rasters.</div></div><div class=CToolTip id="tt93"><div class=CConstructor>Create a new Refresh strategy.</div></div><div class=CToolTip id="tt94"><div class=CConstructor>Create a new regular polygon handler.</div></div><div class=CToolTip id="tt95"><div class=CConstructor>Create a new root container for multiple vector layer. </div></div><div class=CToolTip id="tt96"><div class=CConstructor>Creates a  [...]
+<div class=CToolTip id="tt94"><div class=CConstructor>Create a symbolizer for rendering rasters.</div></div><div class=CToolTip id="tt95"><div class=CConstructor>Create a new Refresh strategy.</div></div><div class=CToolTip id="tt96"><div class=CConstructor>Create a new regular polygon handler.</div></div><div class=CToolTip id="tt97"><div class=CConstructor>Create a new root container for multiple vector layer. </div></div><div class=CToolTip id="tt98"><div class=CConstructor>Creates a  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt97"><div class=CConstructor>Create a new Save strategy.</div></div><div class=CToolTip id="tt98"><div class=CConstructor>Create a new scale line control.</div></div><div class=CToolTip id="tt99"><div class=CConstructor>A class for giving layers generic Script protocol.</div></div><div class=CToolTip id="tt100"><div class=CConstructor>Create a new control for selecting features.</div></div><div class=CToolTip id="tt101"><div class=CConstructor>Create an instance  [...]
+<div class=CToolTip id="tt99"><div class=CConstructor>Create a new Save strategy.</div></div><div class=CToolTip id="tt100"><div class=CConstructor>Create a new scale line control.</div></div><div class=CToolTip id="tt101"><div class=CConstructor>A class for giving layers generic Script protocol.</div></div><div class=CToolTip id="tt102"><div class=CConstructor>Create a new control for selecting features.</div></div><div class=CToolTip id="tt103"><div class=CConstructor>Create an instanc [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt112"><div class=CConstructor>Create a new parser for TSV Text.</div></div><div class=CToolTip id="tt113"><div class=CConstructor>Create a text layer.</div></div><div class=CToolTip id="tt114"><div class=CConstructor>Create a symbolizer for rendering text labels.</div></div><div class=CToolTip id="tt115"><div class=CConstructor>Constructor for a new OpenLayers.Tile instance.</div></div><div class=CToolTip id="tt116"><div class=CConstructor>Create a new read only  [...]
+<div class=CToolTip id="tt114"><div class=CConstructor>Create a new parser for TSV Text.</div></div><div class=CToolTip id="tt115"><div class=CConstructor>Create a text layer.</div></div><div class=CToolTip id="tt116"><div class=CConstructor>Create a symbolizer for rendering text labels.</div></div><div class=CToolTip id="tt117"><div class=CConstructor>Constructor for a new OpenLayers.Tile instance.</div></div><div class=CToolTip id="tt118"><div class=CConstructor>Create a new read only  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt120"><div class=CConstructor>Create a new UTFGrid layer.</div></div><div class=CToolTip id="tt121"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt123"><div class=CConstructor>Create a new UTFGrid layer.</div></div><div class=CToolTip id="tt124"><div class=CConstructor>Constructor for a new OpenLayers.Tile.UTFGrid instance.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt122"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt123"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt124"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt125"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id=" [...]
+<div class=CToolTip id="tt125"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt126"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt127"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt128"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id=" [...]
 
 </div><!--Index-->
 
@@ -41,10 +41,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Constructor3.html b/doc/devdocs/index/Constructor3.html
index 912095d..48e28a8 100644
--- a/doc/devdocs/index/Constructor3.html
+++ b/doc/devdocs/index/Constructor3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constructor Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
+<div id=Index><div class=IPageTitle>Constructor Index</div><div class=INavigationBar>$#! · 0-9 · <a href="Constructor.html#A">A</a> · <a href="Constructor.html#B">B</a> · <a href="Constructor.html#C">C</a> · <a href="Constructor.html#D">D</a> · <a href="Constructor.html#E">E</a> · <a href="Constructor.html#F">F</a> · <a href="Constructor.html#G">G</a> · <a href="Constructor.html#H">H</a> · <a href="Constructor.html#I"> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt159"><div class=CConstructor>Create a WFS feature.</div></div><div class=CToolTip id="tt160"><div class=CConstructor>Create a WFS-T formatter. </div></div><div class=CToolTip id="tt161"><div class=CConstructor>A class for giving layers WFS protocol.</div></div><div class=CToolTip id="tt162"><div class=CConstructor>Create a new parser for WFS capabilities.</div></div><div class=CToolTip id="tt163"><div class=CConstructor>Create a new parser for WFS DescribeFeatur [...]
+<div class=CToolTip id="tt164"><div class=CConstructor>Create a new parser for WCS capabilities.</div></div><div class=CToolTip id="tt165"><div class=CConstructor>Create a WFS feature.</div></div><div class=CToolTip id="tt166"><div class=CConstructor>Create a WFS-T formatter. </div></div><div class=CToolTip id="tt167"><div class=CConstructor>A class for giving layers WFS protocol.</div></div><div class=CToolTip id="tt168"><div class=CConstructor>Create a new parser for WFS capabilities.< [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt174"><div class=CConstructor>Create a new parser for XLS.</div></div><div class=CToolTip id="tt175"><div class=CConstructor>Construct an XML parser. </div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt180"><div class=CConstructor>Create a new parser for XLS.</div></div><div class=CToolTip id="tt181"><div class=CConstructor>Construct an XML parser. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt176"><div class=CConstructor>Add the three zooming controls.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt182"><div class=CConstructor>Add the three zooming controls.</div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -33,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Files.html b/doc/devdocs/index/Files.html
index 47cb71c..12235dd 100644
--- a/doc/devdocs/index/Files.html
+++ b/doc/devdocs/index/Files.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>File Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -53,10 +53,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions.html b/doc/devdocs/index/Functions.html
index 4441e69..c5a192f 100644
--- a/doc/devdocs/index/Functions.html
+++ b/doc/devdocs/index/Functions.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> · 0-9 · <a href="#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9.html#I">I</a [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> · 0-9 · <a href="#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9.html#I">I</a [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>_addButton:function(</td><td class="PParameter  prettyprint " nowrap>id,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>img,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>activeImg,</td></tr><tr><td></td><td class="PParamet [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request.</div></div><div class=CToolTip id="tt11"><div class=CFunct [...]
+<div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request.</div></div><div class=CToolTip id="tt11"><div class=CFunct [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions10.html b/doc/devdocs/index/Functions10.html
index d007a09..d4fe5d6 100644
--- a/doc/devdocs/index/Functions10.html
+++ b/doc/devdocs/index/Functions10.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1206"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>makeSameOrigin: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>If the tile does not have CORS image loading enabled and is from a different o [...]
+<div class=CToolTip id="tt1228"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function js(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Detect which pr [...]
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1229"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>layerToContext: function(</td><td class="PParameter  prettyprint " nowrap>layer</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Create a layer context object given a wms layer object.</div></div><div clas [...]
 
 </div><!--Index-->
 
@@ -21,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions11.html b/doc/devdocs/index/Functions11.html
index 499a6b1..35cfeb9 100644
--- a/doc/devdocs/index/Functions11.html
+++ b/doc/devdocs/index/Functions11.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1307"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">nextTrigger: function()</td></tr></table></blockquote>Restore the next state. </div></div><div class=CToolTip id="tt1308"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>nodeFactory: f [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1318"><div class=CFunction>Transform an object into a JSON string.</div></div><div class=CToolTip id="tt1319"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>observe: function(</td><td class="PParameter  prettyprint " nowrap>elementParam,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name,</t [...]
+<div class=CToolTip id="tt1256"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>makeSameOrigin: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>If the tile does not have CORS image loading enabled and is from a different o [...]
 
 </div><!--Index-->
 
@@ -25,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions12.html b/doc/devdocs/index/Functions12.html
index ab4df34..019affc 100644
--- a/doc/devdocs/index/Functions12.html
+++ b/doc/devdocs/index/Functions12.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1370"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>page: function(</td><td class="PParameter  prettyprint " nowrap>start,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>event</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Display the p [...]
+<div class=CToolTip id="tt1361"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">nextTrigger: function()</td></tr></table></blockquote>Restore the next state. </div></div><div class=CToolTip id="tt1362"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>nodeFactory: f [...]
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1372"><div class=CFunction>Transform an object into a JSON string.</div></div><div class=CToolTip id="tt1373"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>observe: function(</td><td class="PParameter  prettyprint " nowrap>elementParam,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>name,</t [...]
 
 </div><!--Index-->
 
@@ -21,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions13.html b/doc/devdocs/index/Functions13.html
index ac20c5e..e7af1e0 100644
--- a/doc/devdocs/index/Functions13.html
+++ b/doc/devdocs/index/Functions13.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1456"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>queuePotentialClick: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>This method is separated out largely to make testing easier (so we don&rs [...]
+<div class=CToolTip id="tt1428"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>page: function(</td><td class="PParameter  prettyprint " nowrap>start,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>event</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Display the p [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions14.html b/doc/devdocs/index/Functions14.html
index f0c9297..b87397d 100644
--- a/doc/devdocs/index/Functions14.html
+++ b/doc/devdocs/index/Functions14.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1458"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.rad = function(</td><td class="PParameter  prettyprint " nowrap>x</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt1459"><div class=CFunction><blockquo [...]
+<div class=CToolTip id="tt1516"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>queuePotentialClick: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>This method is separated out largely to make testing easier (so we don&rs [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions15.html b/doc/devdocs/index/Functions15.html
index d16ddf9..05e9240 100644
--- a/doc/devdocs/index/Functions15.html
+++ b/doc/devdocs/index/Functions15.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1678"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.safeStopPropagation = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="t [...]
+<div class=CToolTip id="tt1518"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.rad = function(</td><td class="PParameter  prettyprint " nowrap>x</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt1519"><div class=CFunction><blockquo [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions16.html b/doc/devdocs/index/Functions16.html
index bdd1f59..e7107e4 100644
--- a/doc/devdocs/index/Functions16.html
+++ b/doc/devdocs/index/Functions16.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1870"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>testTarget: function(</td><td class="PParameter  prettyprint " nowrap>target,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>loc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></ [...]
+<div class=CToolTip id="tt1743"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.safeStopPropagation = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="t [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions17.html b/doc/devdocs/index/Functions17.html
index e2862e7..190744a 100644
--- a/doc/devdocs/index/Functions17.html
+++ b/doc/devdocs/index/Functions17.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1934"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cl [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1992"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>value2regex: function(</td><td class="PParameter  prettyprint " nowrap>wildCard,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>singleChar,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>escapeChar</td><td class="PAfterPa [...]
+<div class=CToolTip id="tt1943"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>testTarget: function(</td><td class="PParameter  prettyprint " nowrap>target,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>loc</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></ [...]
 
 </div><!--Index-->
 
@@ -25,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions18.html b/doc/devdocs/index/Functions18.html
index c8d8070..ae5fd3f 100644
--- a/doc/devdocs/index/Functions18.html
+++ b/doc/devdocs/index/Functions18.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1996"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt1997"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><ta [...]
+<div class=CToolTip id="tt2008"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cl [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2061"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>newNode,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>nextNode</td><td class="PAfterParameters   [...]
+<div class=CToolTip id="tt2066"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>value2regex: function(</td><td class="PParameter  prettyprint " nowrap>wildCard,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>singleChar,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>escapeChar</td><td class="PAfterPa [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions19.html b/doc/devdocs/index/Functions19.html
new file mode 100644
index 0000000..10c40c7
--- /dev/null
+++ b/doc/devdocs/index/Functions19.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt2070"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt2071"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><ta [...]
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt2135"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>newNode,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>nextNode</td><td class="PAfterParameters   [...]
+
+</div><!--Index-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([36], 37);// --></script></div><!--Menu-->
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/index/Functions2.html b/doc/devdocs/index/Functions2.html
index 75618cc..4de5ca9 100644
--- a/doc/devdocs/index/Functions2.html
+++ b/doc/devdocs/index/Functions2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt114"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">baseLayerDraw: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt115"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>beforeSelectFeature: function(</td><td [...]
+<div class=CToolTip id="tt122"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">baseLayerDraw: function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt123"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>beforeSelectFeature: function(</td><td [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions3.html b/doc/devdocs/index/Functions3.html
index 7b41c25..be92013 100644
--- a/doc/devdocs/index/Functions3.html
+++ b/doc/devdocs/index/Functions3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt147"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cache: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a tile to the cache. </div></div><div class=CToolTip id="tt148"><div class=CFunctio [...]
+<div class=CToolTip id="tt155"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cache: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a tile to the cache. </div></div><div class=CToolTip id="tt156"><div class=CFunctio [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions4.html b/doc/devdocs/index/Functions4.html
index ab056e2..78be5f5 100644
--- a/doc/devdocs/index/Functions4.html
+++ b/doc/devdocs/index/Functions4.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt369"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dashStyle: function(</td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>widthFactor</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></d [...]
+<div class=CToolTip id="tt382"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dashStyle: function(</td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>widthFactor</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></d [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions5.html b/doc/devdocs/index/Functions5.html
index 41f38b2..a841ac5 100644
--- a/doc/devdocs/index/Functions5.html
+++ b/doc/devdocs/index/Functions5.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt667"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>easeIn: function(</td><td class="PParameter  prettyprint " nowrap>t,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>b,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>c,</td></tr><tr><td></td><td class="PParameter  prettypr [...]
+<div class=CToolTip id="tt693"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>easeIn: function(</td><td class="PParameter  prettyprint " nowrap>t,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>b,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>c,</td></tr><tr><td></td><td class="PParameter  prettypr [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions6.html b/doc/devdocs/index/Functions6.html
index d6bb632..e85eb1f 100644
--- a/doc/devdocs/index/Functions6.html
+++ b/doc/devdocs/index/Functions6.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt713"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>failure: function (</td><td class="PParameter  prettyprint " nowrap>error</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>method called on browser’s geolocation failure</div></div><div class=CToolTip [...]
+<div class=CToolTip id="tt751"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>failure: function (</td><td class="PParameter  prettyprint " nowrap>error</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>method called on browser’s geolocation failure</div></div><div class=CToolTip [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions7.html b/doc/devdocs/index/Functions7.html
index 1a0e601..0b8ea43 100644
--- a/doc/devdocs/index/Functions7.html
+++ b/doc/devdocs/index/Functions7.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="#G">G</a> · <a href="Functions8.html#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt749"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>geolocate: function (</td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Activates the control.</div></div><div class=CToolTip id="tt750"><div class=CF [...]
+<div class=CToolTip id="tt788"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>geolocate: function (</td><td class="PParameter  prettyprint " nowrap>position</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Activates the control.</div></div><div class=CToolTip id="tt789"><div class=CF [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions8.html b/doc/devdocs/index/Functions8.html
index 0d768ba..02214b3 100644
--- a/doc/devdocs/index/Functions8.html
+++ b/doc/devdocs/index/Functions8.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="#H">H</a> · <a href="Functions9 [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="#H">H</a> · <a href="Functions9 [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1083"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>handle: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt1084"><div class=CFunction><blockquote><table bo [...]
+<div class=CToolTip id="tt1128"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>handle: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt1129"><div class=CFunction><blockquote><table bo [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Functions9.html b/doc/devdocs/index/Functions9.html
index 8ade0e2..3479de8 100644
--- a/doc/devdocs/index/Functions9.html
+++ b/doc/devdocs/index/Functions9.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Function Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar><a href="Functions.html#Symbols">$#!</a> · 0-9 · <a href="Functions.html#A">A</a> · <a href="Functions2.html#B">B</a> · <a href="Functions3.html#C">C</a> · <a href="Functions4.html#D">D</a> · <a href="Functions5.html#E">E</a> · <a href="Functions6.html#F">F</a> · <a href="Functions7.html#G">G</a> · <a href="Functions8.html#H">H</a> · <a h [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1114"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt1115"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">iconOff: function()</td></tr></table></blockquote>Internal use, for use only with “controls[i].events.on/un”.</div></div><div class=CToolTip id="tt1116"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpad [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1179"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>layerToContext: function(</td><td class="PParameter  prettyprint " nowrap>layer</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Create a layer context object given a wms layer object.</div></div><div clas [...]
+<div class=CToolTip id="tt1160"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt1161"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">iconOff: function()</td></tr></table></blockquote>Internal use, for use only with “controls[i].events.on/un”.</div></div><div class=CToolTip id="tt1162"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpad [...]
 
 </div><!--Index-->
 
@@ -25,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General.html b/doc/devdocs/index/General.html
index decfa68..f959f51 100644
--- a/doc/devdocs/index/General.html
+++ b/doc/devdocs/index/General.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> · 0-9 · <a href="#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a href="Gener [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> · 0-9 · <a href="#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a href="Gener [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>_addButton:function(</td><td class="PParameter  prettyprint " nowrap>id,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>img,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>activeImg,</td></tr><tr><td></td><td class="PParamet [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request.</div></div><div class=CToolTip id="tt12"><div class=CFunct [...]
+<div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>abort: function(</td><td class="PParameter  prettyprint " nowrap>response</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Abort an ongoing request.</div></div><div class=CToolTip id="tt12"><div class=CFunct [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General10.html b/doc/devdocs/index/General10.html
index 1fbbe45..72500d6 100644
--- a/doc/devdocs/index/General10.html
+++ b/doc/devdocs/index/General10.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1829"><div class=CProperty>{Object} Stores the parsed JSON tile data structure.</div></div><div class=CToolTip id="tt1830"><div class=CConstructor>Create a new parser for JSON.</div></div><div class=CToolTip id="tt1831"><div class=CProperty>{OpenLayers.Format.JSON}</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1902"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>function js(</td><td class="PParameter  prettyprint " nowrap>obj,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>property</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Detect which pr [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1832"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt1833"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt1834"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it  [...]
+<div class=CToolTip id="tt1906"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt1907"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt1908"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it  [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General11.html b/doc/devdocs/index/General11.html
index 6d3e723..5f091b3 100644
--- a/doc/devdocs/index/General11.html
+++ b/doc/devdocs/index/General11.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1855"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt1856"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1857"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1858"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1859"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1860"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt1861 [...]
+<div class=CToolTip id="tt1929"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt1930"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1931"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1932"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1933"><div class=CConstant>{Object}</div></div><div class=CToolTip id="tt1934"><div class=CConstant>{String}</div></div><div class=CToolTip id="tt1935 [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General12.html b/doc/devdocs/index/General12.html
index 920abe5..786a464 100644
--- a/doc/devdocs/index/General12.html
+++ b/doc/devdocs/index/General12.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1979"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>makeSameOrigin: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>If the tile does not have CORS image loading enabled and is from a different o [...]
+<div class=CToolTip id="tt2056"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>makeSameOrigin: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>If the tile does not have CORS image loading enabled and is from a different o [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General13.html b/doc/devdocs/index/General13.html
index 93f0ec4..10e2d08 100644
--- a/doc/devdocs/index/General13.html
+++ b/doc/devdocs/index/General13.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2172"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt2173"><div class=CProperty>{String} The name of this parser, this is the part of the CLASS_NAME except for “OpenLayers.Format.”</div></div><div class=CToolTip id="tt2174"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt2175"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt2176"><div class=CProperty>{String} [...]
+<div class=CToolTip id="tt2260"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt2261"><div class=CProperty>{String} The name of this parser, this is the part of the CLASS_NAME except for “OpenLayers.Format.”</div></div><div class=CToolTip id="tt2262"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt2263"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt2264"><div class=CProperty>{String} [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General14.html b/doc/devdocs/index/General14.html
index 82a80d3..9578f91 100644
--- a/doc/devdocs/index/General14.html
+++ b/doc/devdocs/index/General14.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2240"><div class=CProperty>{Object}  the code object issuing application events</div></div><div class=CToolTip id="tt2241"><div class=CFunction>Transform an object into a JSON string.</div></div><div class=CToolTip id="tt2242"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>observe: function(</td><td class="PPar [...]
+<div class=CToolTip id="tt2330"><div class=CProperty>{Object}  the code object issuing application events</div></div><div class=CToolTip id="tt2331"><div class=CFunction>Transform an object into a JSON string.</div></div><div class=CToolTip id="tt2332"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>observe: function(</td><td class="PPar [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General15.html b/doc/devdocs/index/General15.html
index 2485adf..0651767 100644
--- a/doc/devdocs/index/General15.html
+++ b/doc/devdocs/index/General15.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2633"><div class=CProperty>{int or OpenLayers.Bounds} An extra opportunity to specify internal padding of the content div inside the popup. </div></div><div class=CToolTip id="tt2634"><div class=CProperty>{OpenLayers.Bounds} Outside margin of the popup. </div></div><div class=CToolTip id="tt2635"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBefor [...]
+<div class=CToolTip id="tt2742"><div class=CProperty>{int or OpenLayers.Bounds} An extra opportunity to specify internal padding of the content div inside the popup. </div></div><div class=CToolTip id="tt2743"><div class=CProperty>{OpenLayers.Bounds} Outside margin of the popup. </div></div><div class=CToolTip id="tt2744"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBefor [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General16.html b/doc/devdocs/index/General16.html
index 84d1b81..6a9028c 100644
--- a/doc/devdocs/index/General16.html
+++ b/doc/devdocs/index/General16.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2820"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt2821"><div class=CProperty>{Boolean} If true, filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt2822"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt2823"><div class=CF [...]
+<div class=CToolTip id="tt2936"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt2937"><div class=CProperty>{Boolean} If true, filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt2938"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt2939"><div class=CF [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General17.html b/doc/devdocs/index/General17.html
index c8892e2..1fd40ce 100644
--- a/doc/devdocs/index/General17.html
+++ b/doc/devdocs/index/General17.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2826"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.rad = function(</td><td class="PParameter  prettyprint " nowrap>x</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2827"><div class=CProperty>{Float} O [...]
+<div class=CToolTip id="tt2942"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.rad = function(</td><td class="PParameter  prettyprint " nowrap>x</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt2943"><div class=CProperty>{Float} O [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General18.html b/doc/devdocs/index/General18.html
index 9c76662..f5f8ab7 100644
--- a/doc/devdocs/index/General18.html
+++ b/doc/devdocs/index/General18.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt3175"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.safeStopPropagation = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="t [...]
+<div class=CToolTip id="tt3299"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>OpenLayers.Util.safeStopPropagation = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><b>Deprecated</b>. </div></div><div class=CToolTip id="t [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General19.html b/doc/devdocs/index/General19.html
index 17884d8..914cfdb 100644
--- a/doc/devdocs/index/General19.html
+++ b/doc/devdocs/index/General19.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt3540"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt3541"><div class=CProperty>{OpenLayers.Events} The events instance that the buttonclick event will be triggered on.</div></div><div class=CToolTip id="tt3542"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt3543"><div class=CPrope [...]
+<div class=CToolTip id="tt3674"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt3675"><div class=CProperty>{OpenLayers.Events} The events instance that the buttonclick event will be triggered on.</div></div><div class=CToolTip id="tt3676"><div class=CConstant>{Number} value for OpenLayers.Layer.PointTrack.dataFrom and OpenLayers.Layer.PointTrack.styleFrom</div></div><div class=CToolTip id="tt3677"><div class=CPrope [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General2.html b/doc/devdocs/index/General2.html
index 4e0039b..2311303 100644
--- a/doc/devdocs/index/General2.html
+++ b/doc/devdocs/index/General2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt167"><div class=CProperty>{DOMElement} The back buffer.</div></div><div class=CToolTip id="tt168"><div class=CProperty>{Object} The top-left corner of the current back buffer. </div></div><div class=CToolTip id="tt169"><div class=CProperty>{Number} The resolution of the current back buffer. </div></div><div class=CToolTip id="tt170"><div class=CProperty>{Number} The id of the back buffer timer. </div></div><div class=CToolTip id="tt171"><div class=CConstant>{Str [...]
+<div class=CToolTip id="tt178"><div class=CProperty>{DOMElement} The back buffer.</div></div><div class=CToolTip id="tt179"><div class=CProperty>{Object} The top-left corner of the current back buffer. </div></div><div class=CToolTip id="tt180"><div class=CProperty>{Number} The resolution of the current back buffer. </div></div><div class=CToolTip id="tt181"><div class=CProperty>{Number} The id of the back buffer timer. </div></div><div class=CToolTip id="tt182"><div class=CConstant>{Str [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General20.html b/doc/devdocs/index/General20.html
index f47df38..6239d97 100644
--- a/doc/devdocs/index/General20.html
+++ b/doc/devdocs/index/General20.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt3701"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cl [...]
+<div class=CToolTip id="tt3834"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>un: function(</td><td class="PParameter  prettyprint " nowrap>object</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Convenience method for unregistering listeners with a common scope. </div></div><div cl [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General21.html b/doc/devdocs/index/General21.html
index a99fdc6..6e05565 100644
--- a/doc/devdocs/index/General21.html
+++ b/doc/devdocs/index/General21.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt3796"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt3797"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt3798"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt3799"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip  [...]
+<div class=CToolTip id="tt3929"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt3930"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt3931"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip id="tt3932"><div class=CConstructor>Instances of this class are not created directly. </div></div><div class=CToolTip  [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General22.html b/doc/devdocs/index/General22.html
index 2c14cdc..8ece37d 100644
--- a/doc/devdocs/index/General22.html
+++ b/doc/devdocs/index/General22.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt3882"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt3883"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt3884"><div class=CProperty>{Boole [...]
+<div class=CToolTip id="tt4020"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt4021"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">warn: function()</td></tr></table></blockquote>Writes a message to the console with the visual “warning” icon and color coding and a hyperlink to the line where it was called.</div></div><div class=CToolTip id="tt4022"><div class=CProperty>{Boole [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General23.html b/doc/devdocs/index/General23.html
index ee72b12..1c50422 100644
--- a/doc/devdocs/index/General23.html
+++ b/doc/devdocs/index/General23.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt4000"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt4001"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt4002"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt4003"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt4004"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt4005"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt4006"><div c [...]
+<div class=CToolTip id="tt4139"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt4140"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt4141"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt4142"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt4143"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt4144"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt4145"><div c [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt4021"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt4022"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt4023"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt4024"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt4025"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><div cla [...]
+<div class=CToolTip id="tt4160"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt4161"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt4162"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt4163"><div class=CConstant>{Integer}</div></div><div class=CToolTip id="tt4164"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><div cla [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt4028"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><div class=CToolTip id="tt4029"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowra [...]
+<div class=CToolTip id="tt4167"><div class=CConstant>{Object} Base z-indexes for different classes of thing</div></div><div class=CToolTip id="tt4168"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>Z_ORDER: function(</td><td class="PParameter  prettyprint " nowrap>indexer,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowra [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General3.html b/doc/devdocs/index/General3.html
index 49d6b28..3238409 100644
--- a/doc/devdocs/index/General3.html
+++ b/doc/devdocs/index/General3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt240"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cache: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a tile to the cache. </div></div><div class=CToolTip id="tt241"><div class=CPropert [...]
+<div class=CToolTip id="tt251"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>cache: function(</td><td class="PParameter  prettyprint " nowrap>obj</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a tile to the cache. </div></div><div class=CToolTip id="tt252"><div class=CPropert [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General4.html b/doc/devdocs/index/General4.html
index a883bb3..4ce289d 100644
--- a/doc/devdocs/index/General4.html
+++ b/doc/devdocs/index/General4.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt544"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dashStyle: function(</td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>widthFactor</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></d [...]
+<div class=CToolTip id="tt564"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>dashStyle: function(</td><td class="PParameter  prettyprint " nowrap>style,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>widthFactor</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></d [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General5.html b/doc/devdocs/index/General5.html
index 44a91bd..809e40e 100644
--- a/doc/devdocs/index/General5.html
+++ b/doc/devdocs/index/General5.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt977"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>easeIn: function(</td><td class="PParameter  prettyprint " nowrap>t,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>b,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>c,</td></tr><tr><td></td><td class="PParameter  prettypr [...]
+<div class=CToolTip id="tt1013"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>easeIn: function(</td><td class="PParameter  prettyprint " nowrap>t,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>b,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>c,</td></tr><tr><td></td><td class="PParameter  prettyp [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General6.html b/doc/devdocs/index/General6.html
index 416bc97..8d4fff1 100644
--- a/doc/devdocs/index/General6.html
+++ b/doc/devdocs/index/General6.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1096"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>failure: function (</td><td class="PParameter  prettyprint " nowrap>error</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>method called on browser’s geolocation failure</div></div><div class=CToolTi [...]
+<div class=CToolTip id="tt1149"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>failure: function (</td><td class="PParameter  prettyprint " nowrap>error</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>method called on browser’s geolocation failure</div></div><div class=CToolTi [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General7.html b/doc/devdocs/index/General7.html
index 810bc31..ac35be3 100644
--- a/doc/devdocs/index/General7.html
+++ b/doc/devdocs/index/General7.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="#G">G</a> · <a href="General8.html#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1238"><div class=CProperty>{Boolean} Calculate geodesic metrics instead of planar metrics. </div></div><div class=CToolTip id="tt1239"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt1240"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt1241"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt1242"><div class=CFunction><blockqu [...]
+<div class=CToolTip id="tt1295"><div class=CProperty>{Boolean} Calculate geodesic metrics instead of planar metrics. </div></div><div class=CToolTip id="tt1296"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt1297"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt1298"><div class=CConstructor>Create a new parser for GeoJSON.</div></div><div class=CToolTip id="tt1299"><div class=CFunction><blockqu [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General8.html b/doc/devdocs/index/General8.html
index 8961a8d..231f53b 100644
--- a/doc/devdocs/index/General8.html
+++ b/doc/devdocs/index/General8.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="#H">H</a> · <a href="General9.html#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1623"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt1624"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>handle: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div> [...]
+<div class=CToolTip id="tt1688"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt1689"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>handle: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote></div> [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/General9.html b/doc/devdocs/index/General9.html
index cdaaed6..9f385bf 100644
--- a/doc/devdocs/index/General9.html
+++ b/doc/devdocs/index/General9.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="#I">I</a> · <a  [...]
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> · 0-9 · <a href="General.html#A">A</a> · <a href="General2.html#B">B</a> · <a href="General3.html#C">C</a> · <a href="General4.html#D">D</a> · <a href="General5.html#E">E</a> · <a href="General6.html#F">F</a> · <a href="General7.html#G">G</a> · <a href="General8.html#H">H</a> · <a href="#I">I</a> · <a  [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1688"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt1689"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt1690"><div class=CProperty>{OpenLayers.Icon} The icon used by this marker.</div></div><div class=CToolTip id="tt1691"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt1692"><div class=CFunction><blockquote><table border [...]
+<div class=CToolTip id="tt1756"><div class=CFunction>Alias for OpenLayers.Lang.translate. </div></div><div class=CToolTip id="tt1757"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt1758"><div class=CProperty>{OpenLayers.Icon} The icon used by this marker.</div></div><div class=CToolTip id="tt1759"><div class=CConstructor>Creates an icon, which is an image tag in a div.</div></div><div class=CToolTip id="tt1760"><div class=CFunction><blockquote><table border [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties.html b/doc/devdocs/index/Properties.html
index b4c86d5..d795b1a 100644
--- a/doc/devdocs/index/Properties.html
+++ b/doc/devdocs/index/Properties.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Properties7.html#I">I</a> &middo [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> · 0-9 · <a href="#A">A</a> · <a href="#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Properties7.html#I">I</a> &middo [...]
 <!--START_ND_TOOLTIPS-->
 <div class=CToolTip id="tt1"><div class=CProperty>{Boolean}</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2"><div class=CProperty>{Boolean} The control is active (read-only). </div></div><div class=CToolTip id="tt3"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt4"><div class=CProperty>{Boolean} The control is active.</div></div><div class=CToolTip id="tt5"><div class=CProperty>{Integer}</div></div><div class=CToolTip id="tt6"><div class=CProperty>{Object} stores the active state of this panel’s controls.</div></div><div class=CToolTip id= [...]
+<div class=CToolTip id="tt2"><div class=CProperty>{Boolean} The control is active (read-only). </div></div><div class=CToolTip id="tt3"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt4"><div class=CProperty>{Boolean} The control is active.</div></div><div class=CToolTip id="tt5"><div class=CProperty>{Integer}</div></div><div class=CToolTip id="tt6"><div class=CProperty>{Object} stores the active state of this panel’s controls.</div></div><div class=CToolTip id= [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt49"><div class=CProperty>{DOMElement} The back buffer.</div></div><div class=CToolTip id="tt50"><div class=CProperty>{Object} The top-left corner of the current back buffer. </div></div><div class=CToolTip id="tt51"><div class=CProperty>{Number} The resolution of the current back buffer. </div></div><div class=CToolTip id="tt52"><div class=CProperty>{Number} The id of the back buffer timer. </div></div><div class=CToolTip id="tt53"><div class=CProperty>{String}  [...]
+<div class=CToolTip id="tt52"><div class=CProperty>{DOMElement} The back buffer.</div></div><div class=CToolTip id="tt53"><div class=CProperty>{Object} The top-left corner of the current back buffer. </div></div><div class=CToolTip id="tt54"><div class=CProperty>{Number} The resolution of the current back buffer. </div></div><div class=CToolTip id="tt55"><div class=CProperty>{Number} The id of the back buffer timer. </div></div><div class=CToolTip id="tt56"><div class=CProperty>{String}  [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties10.html b/doc/devdocs/index/Properties10.html
index 5074767..1913272 100644
--- a/doc/devdocs/index/Properties10.html
+++ b/doc/devdocs/index/Properties10.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt740"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt741"><div class=CProperty>{String} The name of this parser, this is the part of the CLASS_NAME except for “OpenLayers.Format.”</div></div><div class=CToolTip id="tt742"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt743"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt744"><div class=CProperty>{String} The  [...]
+<div class=CToolTip id="tt769"><div class=CProperty>{String} Name of the function.</div></div><div class=CToolTip id="tt770"><div class=CProperty>{String} The name of this parser, this is the part of the CLASS_NAME except for “OpenLayers.Format.”</div></div><div class=CToolTip id="tt771"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt772"><div class=CProperty>{String} Layer name. </div></div><div class=CToolTip id="tt773"><div class=CProperty>{String} The  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt795"><div class=CProperty>{Object}  the code object issuing application events</div></div><div class=CToolTip id="tt796"><div class=CProperty>{DOMelement|String} The DOM element to handle keys for. </div></div><div class=CToolTip id="tt797"><div class=CProperty>{DOMElement|String} The DOM element on which we listen for key events. </div></div><div class=CToolTip id="tt798"><div class=CProperty>{Object} A hashtable cache of the event observers. </div></div><div c [...]
+<div class=CToolTip id="tt826"><div class=CProperty>{Object}  the code object issuing application events</div></div><div class=CToolTip id="tt827"><div class=CProperty>{DOMelement|String} The DOM element to handle keys for. </div></div><div class=CToolTip id="tt828"><div class=CProperty>{DOMElement|String} The DOM element on which we listen for key events. </div></div><div class=CToolTip id="tt829"><div class=CProperty>{Object} A hashtable cache of the event observers. </div></div><div c [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties11.html b/doc/devdocs/index/Properties11.html
index 0385bf7..4f191e6 100644
--- a/doc/devdocs/index/Properties11.html
+++ b/doc/devdocs/index/Properties11.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt830"><div class=CProperty>{int or OpenLayers.Bounds} An extra opportunity to specify internal padding of the content div inside the popup. </div></div><div class=CToolTip id="tt831"><div class=CProperty>{OpenLayers.Bounds} Outside margin of the popup. </div></div><div class=CToolTip id="tt832"><div class=CProperty>{Boolean} The strategy is currently changing pages.</div></div><div class=CToolTip id="tt833"><div class=CProperty>{Integer} The number of steps to be [...]
+<div class=CToolTip id="tt862"><div class=CProperty>{int or OpenLayers.Bounds} An extra opportunity to specify internal padding of the content div inside the popup. </div></div><div class=CToolTip id="tt863"><div class=CProperty>{OpenLayers.Bounds} Outside margin of the popup. </div></div><div class=CToolTip id="tt864"><div class=CProperty>{Boolean} The strategy is currently changing pages.</div></div><div class=CToolTip id="tt865"><div class=CProperty>{Integer} The number of steps to be [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt911"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt912"><div class=CProperty>{Boolean} If true, filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt913"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt914"><div class=CPrope [...]
+<div class=CToolTip id="tt948"><div class=CProperty>{String} Value of the csw:Query element, used when writing a csw:GetRecords document.</div></div><div class=CToolTip id="tt949"><div class=CProperty>{Boolean} If true, filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt950"><div class=CProperty>{Boolean} Filter out hidden layers when searching the map for layers to query. </div></div><div class=CToolTip id="tt951"><div class=CPrope [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties12.html b/doc/devdocs/index/Properties12.html
index 7bf231c..45b56da 100644
--- a/doc/devdocs/index/Properties12.html
+++ b/doc/devdocs/index/Properties12.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt915"><div class=CProperty>{Float} Optional radius in map units of the regular polygon. </div></div><div class=CToolTip id="tt916"><div class=CProperty>{OpenLayers.Feature.Vector} A handle for rotating/resizing a feature.</div></div><div class=CToolTip id="tt917"><div class=CProperty>{Float} The ratio of the feature relative to the ratio the time the feature was set. </div></div><div class=CToolTip id="tt918"><div class=CProperty>{Float} Used only when in single- [...]
+<div class=CToolTip id="tt952"><div class=CProperty>{Float} Optional radius in map units of the regular polygon. </div></div><div class=CToolTip id="tt953"><div class=CProperty>{OpenLayers.Feature.Vector} A handle for rotating/resizing a feature.</div></div><div class=CToolTip id="tt954"><div class=CProperty>{Float} The ratio of the feature relative to the ratio the time the feature was set. </div></div><div class=CToolTip id="tt955"><div class=CProperty>{Float} Used only when in single- [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties13.html b/doc/devdocs/index/Properties13.html
index a5a7b3a..6fd4a81 100644
--- a/doc/devdocs/index/Properties13.html
+++ b/doc/devdocs/index/Properties13.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1032"><div class=CProperty>{Boolean} Whether to save the feature state (OpenLayers.State) into the database, defaults to true.</div></div><div class=CToolTip id="tt1033"><div class=CProperty>{Boolean} If set to true, the active state of this panel’s controls will be stored on panel deactivation, and restored on reactivation. </div></div><div class=CToolTip id="tt1034"><div class=CProperty>{Float} The scale of the feature, relative to the scale the time the [...]
+<div class=CToolTip id="tt1072"><div class=CProperty>{Boolean} Whether to save the feature state (OpenLayers.State) into the database, defaults to true.</div></div><div class=CToolTip id="tt1073"><div class=CProperty>{Boolean} If set to true, the active state of this panel’s controls will be stored on panel deactivation, and restored on reactivation. </div></div><div class=CToolTip id="tt1074"><div class=CProperty>{Float} The scale of the feature, relative to the scale the time the [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties14.html b/doc/devdocs/index/Properties14.html
index 31dac26..a48d85a 100644
--- a/doc/devdocs/index/Properties14.html
+++ b/doc/devdocs/index/Properties14.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1182"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt1183"><div class=CProperty>{OpenLayers.Events} The events instance that the buttonclick event will be triggered on.</div></div><div class=CToolTip id="tt1184"><div class=CProperty>{OpenLayers.Filter} Optional filter that will be evaluated to determine if a feature from the target layer is eligible for splitting.</div></div><div class=CT [...]
+<div class=CToolTip id="tt1224"><div class=CProperty>Name of the database table into which Features should be saved.</div></div><div class=CToolTip id="tt1225"><div class=CProperty>{OpenLayers.Events} The events instance that the buttonclick event will be triggered on.</div></div><div class=CToolTip id="tt1226"><div class=CProperty>{OpenLayers.Filter} Optional filter that will be evaluated to determine if a feature from the target layer is eligible for splitting.</div></div><div class=CT [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1267"><div class=CProperty>{String} The layer map units. </div></div><div class=CToolTip id="tt1268"><div class=CProperty>{String} The map units. </div></div><div class=CToolTip id="tt1269"><div class=CProperty>{Object} hash of features, keyed by feature.id, that the renderer failed to draw</div></div><div class=CToolTip id="tt1270"><div class=CProperty>{Array} Array with browsers, which should use the HTTP-GET protocol instead of HTTP-POST for fetching tiles fr [...]
+<div class=CToolTip id="tt1306"><div class=CProperty>{String} The layer map units. </div></div><div class=CToolTip id="tt1307"><div class=CProperty>{String} The map units. </div></div><div class=CToolTip id="tt1308"><div class=CProperty>{Object} hash of features, keyed by feature.id, that the renderer failed to draw</div></div><div class=CToolTip id="tt1309"><div class=CProperty>{Array} Array with browsers, which should use the HTTP-GET protocol instead of HTTP-POST for fetching tiles fr [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties15.html b/doc/devdocs/index/Properties15.html
index 48286ee..9ba4068 100644
--- a/doc/devdocs/index/Properties15.html
+++ b/doc/devdocs/index/Properties15.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,25 +11,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1301"><div class=CProperty>{Number} or {String} comparison value for binary comparisons. </div></div><div class=CToolTip id="tt1302"><div class=CProperty>{OpenLayers.Bounds || OpenLayers.Geometry} The bounds or geometry to be used by the filter. </div></div><div class=CToolTip id="tt1303"><div class=CProperty>{Boolean} Should be calculated automatically. </div></div><div class=CToolTip id="tt1304"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip  [...]
+<div class=CToolTip id="tt1340"><div class=CProperty>{Number} or {String} comparison value for binary comparisons. </div></div><div class=CToolTip id="tt1341"><div class=CProperty>{OpenLayers.Bounds || OpenLayers.Geometry} The bounds or geometry to be used by the filter. </div></div><div class=CToolTip id="tt1342"><div class=CProperty>{Boolean} Should be calculated automatically. </div></div><div class=CToolTip id="tt1343"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1332"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt1333"><div class=CProperty>{Boolean} If true, position will be update regularly.</div></div><div class=CToolTip id="tt1334"><div class=CProperty>{Object} Cache to use for storing parsed results from OpenLayers.Format.WFSDescribeFeatureType.read. </div></div><div class=CToolTip id="tt1335"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt1336"><div class=CProperty>{fu [...]
+<div class=CToolTip id="tt1373"><div class=CProperty>{Number} width</div></div><div class=CToolTip id="tt1374"><div class=CProperty>{Boolean} If true, position will be update regularly.</div></div><div class=CToolTip id="tt1375"><div class=CProperty>{Object} Cache to use for storing parsed results from OpenLayers.Format.WFSDescribeFeatureType.read. </div></div><div class=CToolTip id="tt1376"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt1377"><div class=CProperty>{fu [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1370"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1371"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt1372"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt1373"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt1374"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt1375"><div class=CProperty>{XMLDom} If this browser uses ActiveX, this will be set to  [...]
+<div class=CToolTip id="tt1411"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1412"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt1413"><div class=CProperty>{Number} The x coordinate</div></div><div class=CToolTip id="tt1414"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt1415"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt1416"><div class=CProperty>{XMLDom} If this browser uses ActiveX, this will be set to  [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1388"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1389"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt1390"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt1391"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><div class=CToolTip id="tt1392"><div class=CProperty>{Object} Members in the yx ob [...]
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1394"><div class=CProperty>{Number} The zIndex determines the rendering order for a symbolizer. </div></div><div class=CToolTip id="tt1395"><div class=CProperty>{int}</div></div><div class=CToolTip id="tt1396"><div class=CProperty>{Integer} The current zoom level of the map</div></div><div class=CToolTip id="tt1397"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip id="tt1398"><div class=CProperty>{OpenLayers.Control.ZoomBox}</div></div><div class [...]
+<div class=CToolTip id="tt1429"><div class=CProperty>{float}</div></div><div class=CToolTip id="tt1430"><div class=CProperty>{Float}</div></div><div class=CToolTip id="tt1431"><div class=CProperty>{Number} The y coordinate</div></div><div class=CToolTip id="tt1432"><div class=CProperty>{Object} Members in the yx object are used to determine if a CRS URN corresponds to a CRS with y,x axis order. </div></div><div class=CToolTip id="tt1433"><div class=CProperty>{Object} Members in the yx ob [...]
 
 </div><!--Index-->
 
@@ -37,10 +33,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties16.html b/doc/devdocs/index/Properties16.html
new file mode 100644
index 0000000..f336e84
--- /dev/null
+++ b/doc/devdocs/index/Properties16.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
+if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
+
+<!--  Generated by Natural Docs, version 1.51 -->
+<!--  http://www.naturaldocs.org  -->
+
+<!-- saved from url=(0026)http://www.naturaldocs.org -->
+
+
+
+
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1435"><div class=CProperty>{Number} The zIndex determines the rendering order for a symbolizer. </div></div><div class=CToolTip id="tt1436"><div class=CProperty>{int}</div></div><div class=CToolTip id="tt1437"><div class=CProperty>{Integer} The current zoom level of the map</div></div><div class=CToolTip id="tt1438"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip id="tt1439"><div class=CProperty>{OpenLayers.Control.ZoomBox}</div></div><div class [...]
+
+</div><!--Index-->
+
+
+<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
+
+
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
+--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
+HideAllBut([36], 37);// --></script></div><!--Menu-->
+
+
+<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
+
+
+<script language=JavaScript><!--
+if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
diff --git a/doc/devdocs/index/Properties2.html b/doc/devdocs/index/Properties2.html
index 5ba7eee..9b34df3 100644
--- a/doc/devdocs/index/Properties2.html
+++ b/doc/devdocs/index/Properties2.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt81"><div class=CProperty>{Object} Cache for elements that should only be created once per map.</div></div><div class=CToolTip id="tt82"><div class=CProperty>{Array(OpenLayers.Feature.Vector)} List of currently cached features.</div></div><div class=CToolTip id="tt83"><div class=CProperty>{Object} Internal cache of calculated symbol extents.</div></div><div class=CToolTip id="tt84"><div class=CProperty>{Boolean} The filter is currently caching features.</div></di [...]
+<div class=CToolTip id="tt84"><div class=CProperty>{Object} A cache of features under the mouse.</div></div><div class=CToolTip id="tt85"><div class=CProperty>{Object} Cache for elements that should only be created once per map.</div></div><div class=CToolTip id="tt86"><div class=CProperty>{Array(OpenLayers.Feature.Vector)} List of currently cached features.</div></div><div class=CToolTip id="tt87"><div class=CProperty>{Object} Internal cache of calculated symbol extents.</div></div><div [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties3.html b/doc/devdocs/index/Properties3.html
index d8f9678..f220fd0 100644
--- a/doc/devdocs/index/Properties3.html
+++ b/doc/devdocs/index/Properties3.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt155"><div class=CProperty>{Object}</div></div><div class=CToolTip id="tt156"><div class=CProperty>{Object} When keepData is true, this is the parsed string sent to read.</div></div><div class=CToolTip id="tt157"><div class=CProperty>{Object} The data returned in the response by the server. </div></div><div class=CToolTip id="tt158"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt159"><div class=CProperty>{OpenLayers.Layer.PointTrack.TARGET_NOD [...]
+<div class=CToolTip id="tt161"><div class=CProperty>{Object}</div></div><div class=CToolTip id="tt162"><div class=CProperty>{Object} When keepData is true, this is the parsed string sent to read.</div></div><div class=CToolTip id="tt163"><div class=CProperty>{Object} The data returned in the response by the server. </div></div><div class=CToolTip id="tt164"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt165"><div class=CProperty>{OpenLayers.Layer.PointTrack.TARGET_NOD [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties4.html b/doc/devdocs/index/Properties4.html
index d8af77f..e856499 100644
--- a/doc/devdocs/index/Properties4.html
+++ b/doc/devdocs/index/Properties4.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt270"><div class=CProperty>{<OpenLayers.Easing>(Function)} Easing equation used for the animation Defaultly set to OpenLayers.Easing.Expo.easeOut</div></div><div class=CToolTip id="tt271"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip id="tt272"><div class=CProperty>{Boolean} Allow splits given intersection of edges only. </div></div><div class=CToolTip id="tt273"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip id="tt274"> [...]
+<div class=CToolTip id="tt279"><div class=CProperty>{<OpenLayers.Easing>(Function)} Easing equation used for the animation Defaultly set to OpenLayers.Easing.Expo.easeOut</div></div><div class=CToolTip id="tt280"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip id="tt281"><div class=CProperty>{Boolean} Allow splits given intersection of edges only. </div></div><div class=CToolTip id="tt282"><div class=CProperty>{DOMElement}</div></div><div class=CToolTip id="tt283"> [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties5.html b/doc/devdocs/index/Properties5.html
index ade9253..fecaca8 100644
--- a/doc/devdocs/index/Properties5.html
+++ b/doc/devdocs/index/Properties5.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> · <a href="Pro [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt340"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt341"><div class=CProperty>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  </div></div><div class=CToolTip id="tt342"><div class=CProperty>{OpenLayers.Feature.Vector}</div></div><div class=CToolTip id="tt343"><div class=CProperty>{OpenLayers.Feature.Vector} Feature currently available for modification.</div>< [...]
+<div class=CToolTip id="tt353"><div class=CProperty>{Boolean}</div></div><div class=CToolTip id="tt354"><div class=CProperty>{Boolean} Should OpenLayers allow events on the map to fall through to other elements on the page, or should it swallow them?  </div></div><div class=CToolTip id="tt355"><div class=CProperty>{OpenLayers.Feature.Vector}</div></div><div class=CToolTip id="tt356"><div class=CProperty>{OpenLayers.Feature.Vector} Feature currently available for modification.</div>< [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties6.html b/doc/devdocs/index/Properties6.html
index 4072c18..79fd777 100644
--- a/doc/devdocs/index/Properties6.html
+++ b/doc/devdocs/index/Properties6.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="Properties7.html#I" [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="#G">G</a> · <a href="#H">H</a> · <a href="Properties7.html#I" [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt436"><div class=CProperty>{Boolean} Calculate geodesic metrics instead of planar metrics. </div></div><div class=CToolTip id="tt437"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt438"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt439"><div class=CProperty>{Object} The geolocation engine, as a property to be possibly mocked.</div></div><div class=CToolTip id="tt440"> [...]
+<div class=CToolTip id="tt451"><div class=CProperty>{Boolean} Calculate geodesic metrics instead of planar metrics. </div></div><div class=CToolTip id="tt452"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt453"><div class=CProperty>{Boolean} Use geodesic measurement. </div></div><div class=CToolTip id="tt454"><div class=CProperty>{Object} The geolocation engine, as a property to be possibly mocked. </div></div><div class=CToolTip id="tt455" [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt476"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt477"><div class=CProperty>{OpenLayers.Handler} null</div></div><div class=CToolTip id="tt478"><div class=CProperty>{OpenLayers.Handler.Path} The temporary sketch handler created if no source layer is provided.</div></div><div class=CToolTip id="tt479"><div class=CProperty>{Object} Reference to the OpenLayers.Handler for this control</div></div><div class=CToolTip id="tt480"><div class [...]
+<div class=CToolTip id="tt493"><div class=CProperty>{Number} height</div></div><div class=CToolTip id="tt494"><div class=CProperty>{OpenLayers.Handler} null</div></div><div class=CToolTip id="tt495"><div class=CProperty>{OpenLayers.Handler.Path} The temporary sketch handler created if no source layer is provided.</div></div><div class=CToolTip id="tt496"><div class=CProperty>{Object} Reference to the OpenLayers.Handler for this control</div></div><div class=CToolTip id="tt497"><div class [...]
 
 </div><!--Index-->
 
@@ -25,10 +25,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties7.html b/doc/devdocs/index/Properties7.html
index cc1dd19..d3261dd 100644
--- a/doc/devdocs/index/Properties7.html
+++ b/doc/devdocs/index/Properties7.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt507"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt508"><div class=CProperty>{OpenLayers.Icon} The icon used by this marker.</div></div><div class=CToolTip id="tt509"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt510"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt511"><div class=CProperty>{String} A unique identifier for this geometry.</div></div><div class=CToolTip id="tt512"><div class=C [...]
+<div class=CToolTip id="tt526"><div class=CProperty>{OpenLayers.Icon}. </div></div><div class=CToolTip id="tt527"><div class=CProperty>{OpenLayers.Icon} The icon used by this marker.</div></div><div class=CToolTip id="tt528"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt529"><div class=CProperty>{String}</div></div><div class=CToolTip id="tt530"><div class=CProperty>{String} A unique identifier for this geometry.</div></div><div class=CToolTip id="tt531"><div class=C [...]
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt576"><div class=CProperty>{Object} Stores the parsed JSON tile data structure.</div></div><div class=CToolTip id="tt577"><div class=CProperty>{OpenLayers.Format.JSON}</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt596"><div class=CProperty>{Object} Stores the parsed JSON tile data structure.</div></div><div class=CToolTip id="tt597"><div class=CProperty>{OpenLayers.Format.JSON}</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt578"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt579"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt580"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it alw [...]
+<div class=CToolTip id="tt598"><div class=CProperty>{Object} Maintain a reference (data) to the most recently read data. </div></div><div class=CToolTip id="tt599"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it always fits in the available map space. </div></div><div class=CToolTip id="tt600"><div class=CProperty>{Boolean} If panMapIfOutOfView is false, and this property is true, contrain the popup such that it alw [...]
 
 </div><!--Index-->
 
@@ -29,10 +29,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties8.html b/doc/devdocs/index/Properties8.html
index 0cd5aeb..0f510cb 100644
--- a/doc/devdocs/index/Properties8.html
+++ b/doc/devdocs/index/Properties8.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt588"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt589"><div class=CProperty>{String} the format of the labels, default = ‘dm’. </div></div><div class=CToolTip id="tt590"><div class=CProperty>{Boolean} Should the graticule lines be labelled?. </div></div><div class=CToolTip id="tt591"><div class=CProperty>{symbolizer} the symbolizer used to render labels</div></div><div class=CToolTip id="tt592"><div class [...]
+<div class=CToolTip id="tt608"><div class=CProperty>{String} The text for the label.</div></div><div class=CToolTip id="tt609"><div class=CProperty>{String} the format of the labels, default = ‘dm’. </div></div><div class=CToolTip id="tt610"><div class=CProperty>{Boolean} Should the graticule lines be labelled?. </div></div><div class=CToolTip id="tt611"><div class=CProperty>{symbolizer} the symbolizer used to render labels</div></div><div class=CToolTip id="tt612"><div class [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/index/Properties9.html b/doc/devdocs/index/Properties9.html
index 5c54a35..b85ba91 100644
--- a/doc/devdocs/index/Properties9.html
+++ b/doc/devdocs/index/Properties9.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Property Index - OpenLayers</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,9 +11,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
+<div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar><a href="Properties.html#Symbols">$#!</a> · 0-9 · <a href="Properties.html#A">A</a> · <a href="Properties.html#B">B</a> · <a href="Properties2.html#C">C</a> · <a href="Properties3.html#D">D</a> · <a href="Properties4.html#E">E</a> · <a href="Properties5.html#F">F</a> · <a href="Properties6.html#G">G</a> · <a href="Properties6.html#H">H</a> &midd [...]
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt667"><div class=CProperty>{OpenLayers.Map} this gets set in the addControl() function in OpenLayers.Map</div></div><div class=CToolTip id="tt668"><div class=CProperty>{OpenLayers.Map}</div></div><div class=CToolTip id="tt669"><div class=CProperty>{OpenLayers.Map} This variable is set when the layer is added to the map, via the accessor function setMap().</div></div><div class=CToolTip id="tt670"><div class=CProperty>{OpenLayers.Map} the map this marker is attach [...]
+<div class=CToolTip id="tt690"><div class=CProperty>{OpenLayers.Map} this gets set in the addControl() function in OpenLayers.Map</div></div><div class=CToolTip id="tt691"><div class=CProperty>{OpenLayers.Map} The map to register browser events on.</div></div><div class=CToolTip id="tt692"><div class=CProperty>{OpenLayers.Map}</div></div><div class=CToolTip id="tt693"><div class=CProperty>{OpenLayers.Map} This variable is set when the layer is added to the map, via the accessor function  [...]
 
 </div><!--Index-->
 
@@ -21,10 +21,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
 
 
-<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent32')">OpenLayers</a><div class=MGroupContent id=MGroupContent32><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
+<div id=Menu><div class=MTitle>OpenLayers<div class=MSubTitle>JavaScript Mapping Library</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent35')">OpenLayers</a><div class=MGroupContent id=MGroupContent35><div class=MEntry><div class=MFile><a href="../files/OpenLayers-js.html">OpenLayers</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">BaseTypes</a><div class=MGroupContent id=MGroupContent1><div c [...]
 var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
 --></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value=" [...]
-HideAllBut([33], 34);// --></script></div><!--Menu-->
+HideAllBut([36], 37);// --></script></div><!--Menu-->
 
 
 <div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
diff --git a/doc/devdocs/javascript/searchdata.js b/doc/devdocs/javascript/searchdata.js
index 66350a7..38f2ee7 100644
--- a/doc/devdocs/javascript/searchdata.js
+++ b/doc/devdocs/javascript/searchdata.js
@@ -71,7 +71,7 @@ var indexSectionsWithContent = {
       "G": true,
       "H": true,
       "I": true,
-      "J": false,
+      "J": true,
       "K": false,
       "L": true,
       "M": true,
@@ -154,7 +154,7 @@ var indexSectionsWithContent = {
       "Numbers": false,
       "A": false,
       "B": false,
-      "C": false,
+      "C": true,
       "D": false,
       "E": false,
       "F": false,
diff --git a/doc/apidocs/search/FilesC.html b/doc/devdocs/search/ClassesC.html
similarity index 72%
copy from doc/apidocs/search/FilesC.html
copy to doc/devdocs/search/ClassesC.html
index 14f3a41..151f1e0 100644
--- a/doc/apidocs/search/FilesC.html
+++ b/doc/devdocs/search/ClassesC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Class_perjs><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Class-js.html#Class.js" target=_parent class=ISymbol>Class.js</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Class><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Class" target=_parent class=ISymbol>Class</a>, <span class=IParent>OpenLayers</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ClassesO.html b/doc/devdocs/search/ClassesO.html
index 15027b1..3da740c 100644
--- a/doc/devdocs/search/ClassesO.html
+++ b/doc/devdocs/search/ClassesO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OpenLayers><div class=IEntry><a href="../files/OpenLayers-js.html#OpenLayers" target=_parent class=ISymbol>OpenLayers</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Ajax" target=_parent class=ISymbol>OpenLayers.Ajax</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax_perBas [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OpenLayers><div class=IEntry><a href="../files/OpenLayers-js.html#OpenLayers" target=_parent class=ISymbol>OpenLayers</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Ajax" target=_parent class=ISymbol>OpenLayers.Ajax</a></div></div><div class=SRResult id=SR_OpenLayers_perAjax_perBas [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ClassesS.html b/doc/devdocs/search/ClassesS.html
index 01acf6a..ee73643 100644
--- a/doc/devdocs/search/ClassesS.html
+++ b/doc/devdocs/search/ClassesS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ClassesU.html b/doc/devdocs/search/ClassesU.html
index fad197a..991bc26 100644
--- a/doc/devdocs/search/ClassesU.html
+++ b/doc/devdocs/search/ClassesU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsB.html b/doc/devdocs/search/ConstantsB.html
index bf08275..3efce76 100644
--- a/doc/devdocs/search/ConstantsB.html
+++ b/doc/devdocs/search/ConstantsB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsC.html b/doc/devdocs/search/ConstantsC.html
index ec54ff0..8fd58c8 100644
--- a/doc/devdocs/search/ConstantsC.html
+++ b/doc/devdocs/search/ConstantsC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CANVAS_undSUPPORTED><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.CANVAS_SUPPORTED" target=_parent class=ISymbol>CANVAS_SUPPORTED</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_CORNER_undSIZE><div class=IEntry><a href="../files/OpenLayers/Popup/AnchoredBubble-js.html#OpenLayers.Popup.AnchoredBubble.CORNER_SIZE" ta [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CANVAS_undSUPPORTED><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.CANVAS_SUPPORTED" target=_parent class=ISymbol>CANVAS_SUPPORTED</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_CORNER_undSIZE><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Popup.AnchoredBubble.CORNER_SIZE" target=_parent class=IS [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstantsD.html b/doc/devdocs/search/ConstantsD.html
index f720b82..2d13307 100644
--- a/doc/devdocs/search/ConstantsD.html
+++ b/doc/devdocs/search/ConstantsD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsF.html b/doc/devdocs/search/ConstantsF.html
index c9f7d11..0576faf 100644
--- a/doc/devdocs/search/ConstantsF.html
+++ b/doc/devdocs/search/ConstantsF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsI.html b/doc/devdocs/search/ConstantsI.html
index 85e665e..69ea040 100644
--- a/doc/devdocs/search/ConstantsI.html
+++ b/doc/devdocs/search/ConstantsI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_IFrame><div class=IEntry><a href="../files/OpenLayers/Tile/Image/IFrame-js.html#OpenLayers.Tile.Image.IFrame" target=_parent class=ISymbol>IFrame</a>, <span class=IParent>OpenLayers.<wbr>Tile.<wbr>Image</span></div></div><div class=SRResult id=SR_IMAGE_undEXTENSIONS><div class=IEntry><a href="../files/OpenLayers/Layer/KaMapCache-js.html#OpenLayers.Layer.KaMap [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_IFrame><div class=IEntry><a href="../files/OpenLayers/Tile/Image/IFrame-js.html#OpenLayers.Tile.Image.IFrame" target=_parent class=ISymbol>IFrame</a>, <span class=IParent>OpenLayers.<wbr>Tile.<wbr>Image</span></div></div><div class=SRResult id=SR_IMAGE><div class=IEntry><a href="../files/OpenLayers/Tile/Image-js.html#OpenLayers.Tile.Image.OpenLayers.Tile.Imag [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstantsK.html b/doc/devdocs/search/ConstantsK.html
index 4af0fb4..9031e74 100644
--- a/doc/devdocs/search/ConstantsK.html
+++ b/doc/devdocs/search/ConstantsK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsL.html b/doc/devdocs/search/ConstantsL.html
index 08283ba..7b21800 100644
--- a/doc/devdocs/search/ConstantsL.html
+++ b/doc/devdocs/search/ConstantsL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsM.html b/doc/devdocs/search/ConstantsM.html
index f595631..9e38a90 100644
--- a/doc/devdocs/search/ConstantsM.html
+++ b/doc/devdocs/search/ConstantsM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_MAX_undPIXEL><div class=IEntry><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.MAX_PIXEL" target=_parent class=ISymbol>MAX_PIXEL</a>, <span class=IParent>OpenLayers.<wbr>Renderer.SVG</span></div></div><div class=SRResult id=SR_MAX_undZOOM_undLEVEL><div class=IEntry><a href="javascript:searchResults.Toggle('SR_MAX_undZOOM_undLEVEL')"  [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_MAX_undPIXEL><div class=IEntry><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.MAX_PIXEL" target=_parent class=ISymbol>MAX_PIXEL</a>, <span class=IParent>OpenLayers.<wbr>Renderer.SVG</span></div></div><div class=SRResult id=SR_MAX_undZOOM_undLEVEL><div class=IEntry><a href="javascript:searchResults.Toggle('SR_MAX_undZOOM_undLEVEL')"  [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstantsO.html b/doc/devdocs/search/ConstantsO.html
index 2abd281..e3635fe 100644
--- a/doc/devdocs/search/ConstantsO.html
+++ b/doc/devdocs/search/ConstantsO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsR.html b/doc/devdocs/search/ConstantsR.html
index ce6a86a..9115d11 100644
--- a/doc/devdocs/search/ConstantsR.html
+++ b/doc/devdocs/search/ConstantsR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsS.html b/doc/devdocs/search/ConstantsS.html
index 9ffbedc..eacac96 100644
--- a/doc/devdocs/search/ConstantsS.html
+++ b/doc/devdocs/search/ConstantsS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsT.html b/doc/devdocs/search/ConstantsT.html
index d5aef7e..7211c9a 100644
--- a/doc/devdocs/search/ConstantsT.html
+++ b/doc/devdocs/search/ConstantsT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsU.html b/doc/devdocs/search/ConstantsU.html
index ea76246..598cd6b 100644
--- a/doc/devdocs/search/ConstantsU.html
+++ b/doc/devdocs/search/ConstantsU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsV.html b/doc/devdocs/search/ConstantsV.html
index f39a23c..8ce96d2 100644
--- a/doc/devdocs/search/ConstantsV.html
+++ b/doc/devdocs/search/ConstantsV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsX.html b/doc/devdocs/search/ConstantsX.html
index 747d031..6cb3a99 100644
--- a/doc/devdocs/search/ConstantsX.html
+++ b/doc/devdocs/search/ConstantsX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsY.html b/doc/devdocs/search/ConstantsY.html
index f973570..591559d 100644
--- a/doc/devdocs/search/ConstantsY.html
+++ b/doc/devdocs/search/ConstantsY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstantsZ.html b/doc/devdocs/search/ConstantsZ.html
index 24fc58d..3cf7027 100644
--- a/doc/devdocs/search/ConstantsZ.html
+++ b/doc/devdocs/search/ConstantsZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorA.html b/doc/devdocs/search/ConstructorA.html
index 3ac1528..e0f7a9e 100644
--- a/doc/devdocs/search/ConstructorA.html
+++ b/doc/devdocs/search/ConstructorA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Anchored><div class=IEntry><a href="../files/OpenLayers/Popup/Anchored-js.html#OpenLayers.Popup.Anchored.OpenLayers.Popup.Anchored" target=_parent class=ISymbol>Anchored</a>, <span class=IParent>OpenLayers.<wbr>Popup.<wbr>Anchored.<wbr>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_AnchoredBubble><div class=IEntry><a href="../files/OpenLaye [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Anchored><div class=IEntry><a href="../files/OpenLayers/Popup/Anchored-js.html#OpenLayers.Popup.Anchored.OpenLayers.Popup.Anchored" target=_parent class=ISymbol>Anchored</a>, <span class=IParent>OpenLayers.<wbr>Popup.<wbr>Anchored.<wbr>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_AnchoredBubble><div class=IEntry><a href="../files/deprecat [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorB.html b/doc/devdocs/search/ConstructorB.html
index 8bb7fd2..a92b765 100644
--- a/doc/devdocs/search/ConstructorB.html
+++ b/doc/devdocs/search/ConstructorB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorC.html b/doc/devdocs/search/ConstructorC.html
index 2c39af6..618cb48 100644
--- a/doc/devdocs/search/ConstructorC.html
+++ b/doc/devdocs/search/ConstructorC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CacheRead><div class=IEntry><a href="../files/OpenLayers/Control/CacheRead-js.html#OpenLayers.Control.CacheRead.OpenLayers.Control.CacheRead" target=_parent class=ISymbol>CacheRead</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheRead.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_CacheWrite><div class=IEntry><a href="../fi [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CacheRead><div class=IEntry><a href="../files/OpenLayers/Control/CacheRead-js.html#OpenLayers.Control.CacheRead.OpenLayers.Control.CacheRead" target=_parent class=ISymbol>CacheRead</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheRead.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_CacheWrite><div class=IEntry><a href="../fi [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorD.html b/doc/devdocs/search/ConstructorD.html
index b9fd6d0..036bac5 100644
--- a/doc/devdocs/search/ConstructorD.html
+++ b/doc/devdocs/search/ConstructorD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorE.html b/doc/devdocs/search/ConstructorE.html
index f8521ba..4dcb7bd 100644
--- a/doc/devdocs/search/ConstructorE.html
+++ b/doc/devdocs/search/ConstructorE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_EditingToolbar><div class=IEntry><a href="../files/OpenLayers/Control/EditingToolbar-js.html#OpenLayers.Control.EditingToolbar.OpenLayers.Control.EditingToolbar" target=_parent class=ISymbol>EditingToolbar</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>EditingToolbar.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_Elements><div [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_EditingToolbar><div class=IEntry><a href="../files/OpenLayers/Control/EditingToolbar-js.html#OpenLayers.Control.EditingToolbar.OpenLayers.Control.EditingToolbar" target=_parent class=ISymbol>EditingToolbar</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>EditingToolbar.<wbr>OpenLayers.<wbr>Control</span></div></div><div class=SRResult id=SR_Elements><div [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorF.html b/doc/devdocs/search/ConstructorF.html
index 6e0b11b..5ea4f99 100644
--- a/doc/devdocs/search/ConstructorF.html
+++ b/doc/devdocs/search/ConstructorF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Feature><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Feature')" class=ISymbol>Feature</a><div class=ISubIndex><a href="../files/OpenLayers/Feature-js.html#OpenLayers.Feature.OpenLayers.Feature" target=_parent class=IParent>OpenLayers.<wbr>Feature.<wbr>OpenLayers</a><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Featu [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Feature><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Feature')" class=ISymbol>Feature</a><div class=ISubIndex><a href="../files/OpenLayers/Feature-js.html#OpenLayers.Feature.OpenLayers.Feature" target=_parent class=IParent>OpenLayers.<wbr>Feature.<wbr>OpenLayers</a><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Featu [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorG.html b/doc/devdocs/search/ConstructorG.html
index 2b01242..fe2e254 100644
--- a/doc/devdocs/search/ConstructorG.html
+++ b/doc/devdocs/search/ConstructorG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorH.html b/doc/devdocs/search/ConstructorH.html
index a10eb1b..fe2e09b 100644
--- a/doc/devdocs/search/ConstructorH.html
+++ b/doc/devdocs/search/ConstructorH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorI.html b/doc/devdocs/search/ConstructorI.html
index 67c1e34..edbba61 100644
--- a/doc/devdocs/search/ConstructorI.html
+++ b/doc/devdocs/search/ConstructorI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorJ.html b/doc/devdocs/search/ConstructorJ.html
index 14b852f..e7ad66b 100644
--- a/doc/devdocs/search/ConstructorJ.html
+++ b/doc/devdocs/search/ConstructorJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorK.html b/doc/devdocs/search/ConstructorK.html
index 645b059..65bc3d2 100644
--- a/doc/devdocs/search/ConstructorK.html
+++ b/doc/devdocs/search/ConstructorK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorL.html b/doc/devdocs/search/ConstructorL.html
index e23429a..afaf76d 100644
--- a/doc/devdocs/search/ConstructorL.html
+++ b/doc/devdocs/search/ConstructorL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorM.html b/doc/devdocs/search/ConstructorM.html
index 81ef9b1..d21b1a5 100644
--- a/doc/devdocs/search/ConstructorM.html
+++ b/doc/devdocs/search/ConstructorM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorN.html b/doc/devdocs/search/ConstructorN.html
index 1e93f85..7275722 100644
--- a/doc/devdocs/search/ConstructorN.html
+++ b/doc/devdocs/search/ConstructorN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorO.html b/doc/devdocs/search/ConstructorO.html
index aaf416d..1f6cdea 100644
--- a/doc/devdocs/search/ConstructorO.html
+++ b/doc/devdocs/search/ConstructorO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OGCExceptionReport><div class=IEntry><a href="../files/OpenLayers/Format/OGCExceptionReport-js.html#OpenLayers.Format.OGCExceptionReport.OpenLayers.Format.OGCExceptionReport" target=_parent class=ISymbol>OGCExceptionReport</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport.<wbr>OpenLayers.<wbr>Format</span></div></div><div class=SRResult  [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_OGCExceptionReport><div class=IEntry><a href="../files/OpenLayers/Format/OGCExceptionReport-js.html#OpenLayers.Format.OGCExceptionReport.OpenLayers.Format.OGCExceptionReport" target=_parent class=ISymbol>OGCExceptionReport</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OGCExceptionReport.<wbr>OpenLayers.<wbr>Format</span></div></div><div class=SRResult  [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorP.html b/doc/devdocs/search/ConstructorP.html
index b87785f..5e55f32 100644
--- a/doc/devdocs/search/ConstructorP.html
+++ b/doc/devdocs/search/ConstructorP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorR.html b/doc/devdocs/search/ConstructorR.html
index f209db9..9b916ed 100644
--- a/doc/devdocs/search/ConstructorR.html
+++ b/doc/devdocs/search/ConstructorR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorS.html b/doc/devdocs/search/ConstructorS.html
index a266ee9..63559db 100644
--- a/doc/devdocs/search/ConstructorS.html
+++ b/doc/devdocs/search/ConstructorS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorT.html b/doc/devdocs/search/ConstructorT.html
index af4af3d..c6e04e0 100644
--- a/doc/devdocs/search/ConstructorT.html
+++ b/doc/devdocs/search/ConstructorT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Text><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Text')" class=ISymbol>Text</a><div class=ISubIndex><a href="../files/OpenLayers/Format/Text-js.html#OpenLayers.Format.Text.OpenLayers.Format.Text" target=_parent class=IParent>OpenLayers.<wbr>Format.<wbr>Text.<wbr>OpenLayers.<wbr>Format</a><a href="../files/OpenLayers/Layer/Text-js.html#OpenL [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Text><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Text')" class=ISymbol>Text</a><div class=ISubIndex><a href="../files/OpenLayers/Format/Text-js.html#OpenLayers.Format.Text.OpenLayers.Format.Text" target=_parent class=IParent>OpenLayers.<wbr>Format.<wbr>Text.<wbr>OpenLayers.<wbr>Format</a><a href="../files/OpenLayers/Layer/Text-js.html#OpenL [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorU.html b/doc/devdocs/search/ConstructorU.html
index 1f44cd3..8f0bad3 100644
--- a/doc/devdocs/search/ConstructorU.html
+++ b/doc/devdocs/search/ConstructorU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorV.html b/doc/devdocs/search/ConstructorV.html
index 25c2b0c..1546a28 100644
--- a/doc/devdocs/search/ConstructorV.html
+++ b/doc/devdocs/search/ConstructorV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorW.html b/doc/devdocs/search/ConstructorW.html
index 307f525..f3e1dc4 100644
--- a/doc/devdocs/search/ConstructorW.html
+++ b/doc/devdocs/search/ConstructorW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_WCSGetCoverage><div class=IEntry><a href="../files/OpenLayers/Format/WCSGetCoverage-js.html#OpenLayers.Format.WCSGetCoverage_version_1.1.0.OpenLayers.Format.WCSGetCoverage" target=_parent class=ISymbol>WCSGetCoverage</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>WCSGetCoverage version 1.<wbr>1.0.<wbr>OpenLayers.<wbr>Format</span></div></div><div class= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_WCSCapabilities><div class=IEntry><a href="../files/OpenLayers/Format/WCSCapabilities-js.html#OpenLayers.Format.WCSCapabilities.OpenLayers.Format.WCSCapabilities" target=_parent class=ISymbol>WCSCapabilities</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>WCSCapabilities.<wbr>OpenLayers.<wbr>Format</span></div></div><div class=SRResult id=SR_WCSGetCovera [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/ConstructorX.html b/doc/devdocs/search/ConstructorX.html
index 96fbd57..6ea43f1 100644
--- a/doc/devdocs/search/ConstructorX.html
+++ b/doc/devdocs/search/ConstructorX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorY.html b/doc/devdocs/search/ConstructorY.html
index ebb1ba3..27e9e75 100644
--- a/doc/devdocs/search/ConstructorY.html
+++ b/doc/devdocs/search/ConstructorY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/ConstructorZ.html b/doc/devdocs/search/ConstructorZ.html
index 24abb97..d757d9e 100644
--- a/doc/devdocs/search/ConstructorZ.html
+++ b/doc/devdocs/search/ConstructorZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesA.html b/doc/devdocs/search/FilesA.html
index 8fc8110..afd78fd 100644
--- a/doc/devdocs/search/FilesA.html
+++ b/doc/devdocs/search/FilesA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesC.html b/doc/devdocs/search/FilesC.html
index 14f3a41..cc62983 100644
--- a/doc/devdocs/search/FilesC.html
+++ b/doc/devdocs/search/FilesC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesD.html b/doc/devdocs/search/FilesD.html
index c25e0b4..e172ff7 100644
--- a/doc/devdocs/search/FilesD.html
+++ b/doc/devdocs/search/FilesD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesI.html b/doc/devdocs/search/FilesI.html
index eae6a2e..660a46d 100644
--- a/doc/devdocs/search/FilesI.html
+++ b/doc/devdocs/search/FilesI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesK.html b/doc/devdocs/search/FilesK.html
index 20369f2..0e710c9 100644
--- a/doc/devdocs/search/FilesK.html
+++ b/doc/devdocs/search/FilesK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesO.html b/doc/devdocs/search/FilesO.html
index 4eccc8f..34a3b00 100644
--- a/doc/devdocs/search/FilesO.html
+++ b/doc/devdocs/search/FilesO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesS.html b/doc/devdocs/search/FilesS.html
index 021231f..20ccbef 100644
--- a/doc/devdocs/search/FilesS.html
+++ b/doc/devdocs/search/FilesS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesV.html b/doc/devdocs/search/FilesV.html
index bd6d556..82a5980 100644
--- a/doc/devdocs/search/FilesV.html
+++ b/doc/devdocs/search/FilesV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FilesW.html b/doc/devdocs/search/FilesW.html
index 838f597..0cca019 100644
--- a/doc/devdocs/search/FilesW.html
+++ b/doc/devdocs/search/FilesW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FunctionsA.html b/doc/devdocs/search/FunctionsA.html
index 3a955f8..86159cf 100644
--- a/doc/devdocs/search/FunctionsA.html
+++ b/doc/devdocs/search/FunctionsA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol-js.html#OpenLayers.Protocol.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol</a><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IPare [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol-js.html#OpenLayers.Protocol.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol</a><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IPare [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsB.html b/doc/devdocs/search/FunctionsB.html
index df53b4e..735c87c 100644
--- a/doc/devdocs/search/FunctionsB.html
+++ b/doc/devdocs/search/FunctionsB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FunctionsC.html b/doc/devdocs/search/FunctionsC.html
index df7ed1f..8adcc43 100644
--- a/doc/devdocs/search/FunctionsC.html
+++ b/doc/devdocs/search/FunctionsC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cache><div class=IEntry><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.cache" target=_parent class=ISymbol>cache</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</span></div></div><div class=SRResult id=SR_cacheFeatures><div class=IEntry><a href="javascript:searchResults.Toggle('SR_cacheFeatures')" class= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cache><div class=IEntry><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.cache" target=_parent class=ISymbol>cache</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</span></div></div><div class=SRResult id=SR_cacheFeatures><div class=IEntry><a href="javascript:searchResults.Toggle('SR_cacheFeatures')" class= [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsD.html b/doc/devdocs/search/FunctionsD.html
index 25fe9c7..55d9569 100644
--- a/doc/devdocs/search/FunctionsD.html
+++ b/doc/devdocs/search/FunctionsD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_dashStyle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dashStyle')" class=ISymbol>dashStyle</a><div class=ISubIndex><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.dashStyle" target=_parent class=IParent>OpenLayers.<wbr>Renderer.SVG</a><a href="../files/deprecated-js.html#OpenLayers.Renderer.SVG2.dashStyle" target=_ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_dashStyle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dashStyle')" class=ISymbol>dashStyle</a><div class=ISubIndex><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.dashStyle" target=_parent class=IParent>OpenLayers.<wbr>Renderer.SVG</a><a href="../files/deprecated-js.html#OpenLayers.Renderer.SVG2.dashStyle" target=_ [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsE.html b/doc/devdocs/search/FunctionsE.html
index c32facb..76621a3 100644
--- a/doc/devdocs/search/FunctionsE.html
+++ b/doc/devdocs/search/FunctionsE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easeIn><div class=IEntry><a href="javascript:searchResults.Toggle('SR_easeIn')" class=ISymbol>easeIn</a><div class=ISubIndex><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Expo.easeIn" target=_parent class=IParent>OpenLayers.<wbr>Easing.Expo</a><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Linear.easeIn" target=_parent class=IPare [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easeIn><div class=IEntry><a href="javascript:searchResults.Toggle('SR_easeIn')" class=ISymbol>easeIn</a><div class=ISubIndex><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Expo.easeIn" target=_parent class=IParent>OpenLayers.<wbr>Easing.Expo</a><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Linear.easeIn" target=_parent class=IPare [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsF.html b/doc/devdocs/search/FunctionsF.html
index 7d8cfd4..a9dd658 100644
--- a/doc/devdocs/search/FunctionsF.html
+++ b/doc/devdocs/search/FunctionsF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_failure><div class=IEntry><a href="../files/OpenLayers/Control/Geolocate-js.html#OpenLayers.Control.Geolocate.failure" target=_parent class=ISymbol>failure</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Geolocate</span></div></div><div class=SRResult id=SR_False><div class=IEntry><a href="../files/OpenLayers/BaseTypes-js.html#OpenLayers.Function.False" [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_failure><div class=IEntry><a href="../files/OpenLayers/Control/Geolocate-js.html#OpenLayers.Control.Geolocate.failure" target=_parent class=ISymbol>failure</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Geolocate</span></div></div><div class=SRResult id=SR_False><div class=IEntry><a href="../files/OpenLayers/BaseTypes-js.html#OpenLayers.Function.False" [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsG.html b/doc/devdocs/search/FunctionsG.html
index c067e4c..6bb9043 100644
--- a/doc/devdocs/search/FunctionsG.html
+++ b/doc/devdocs/search/FunctionsG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_geolocate><div class=IEntry><a href="../files/OpenLayers/Control/Geolocate-js.html#OpenLayers.Control.Geolocate.geolocate" target=_parent class=ISymbol>geolocate</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Geolocate</span></div></div><div class=SRResult id=SR_geometry><div class=IEntry><a href="../files/OpenLayers/Format/GeoJSON-js.html#OpenLayers.F [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_geolocate><div class=IEntry><a href="../files/OpenLayers/Control/Geolocate-js.html#OpenLayers.Control.Geolocate.geolocate" target=_parent class=ISymbol>geolocate</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Geolocate</span></div></div><div class=SRResult id=SR_geometry><div class=IEntry><a href="../files/OpenLayers/Format/GeoJSON-js.html#OpenLayers.F [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsH.html b/doc/devdocs/search/FunctionsH.html
index bcd3915..8bd575e 100644
--- a/doc/devdocs/search/FunctionsH.html
+++ b/doc/devdocs/search/FunctionsH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_handle><div class=IEntry><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Feature.handle" target=_parent class=ISymbol>handle</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>Feature</span></div></div><div class=SRResult id=SR_handleAdd><div class=IEntry><a href="../files/OpenLayers/Strategy/Filter-js.html#OpenLayers.Strategy.Filte [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_handle><div class=IEntry><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Feature.handle" target=_parent class=ISymbol>handle</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>Feature</span></div></div><div class=SRResult id=SR_handleAdd><div class=IEntry><a href="../files/OpenLayers/Strategy/Filter-js.html#OpenLayers.Strategy.Filte [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsI.html b/doc/devdocs/search/FunctionsI.html
index 8c21130..3bda069 100644
--- a/doc/devdocs/search/FunctionsI.html
+++ b/doc/devdocs/search/FunctionsI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_i18n><div class=IEntry><a href="../files/OpenLayers/Lang-js.html#OpenLayers.Lang.OpenLayers.i18n" target=_parent class=ISymbol>i18n</a>, <span class=IParent>OpenLayers.<wbr>Lang.<wbr>OpenLayers</span></div></div><div class=SRResult id=SR_iconOff><div class=IEntry><a href="../files/OpenLayers/Control/Panel-js.html#OpenLayers.Control.Panel.iconOff" target=_pare [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_i18n><div class=IEntry><a href="../files/OpenLayers/Lang-js.html#OpenLayers.Lang.OpenLayers.i18n" target=_parent class=ISymbol>i18n</a>, <span class=IParent>OpenLayers.<wbr>Lang.<wbr>OpenLayers</span></div></div><div class=SRResult id=SR_iconOff><div class=IEntry><a href="../files/OpenLayers/Control/Panel-js.html#OpenLayers.Control.Panel.iconOff" target=_pare [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/apidocs/search/ConstantsX.html b/doc/devdocs/search/FunctionsJ.html
similarity index 69%
copy from doc/apidocs/search/ConstantsX.html
copy to doc/devdocs/search/FunctionsJ.html
index 747d031..4acac2e 100644
--- a/doc/apidocs/search/ConstantsX.html
+++ b/doc/devdocs/search/FunctionsJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_X><div class=IEntry><a href="../files/OpenLayers/Control/PanZoom-js.html#OpenLayers.Control.PanZoom.X" target=_parent class=ISymbol>X</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>PanZoom</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_js><div class=IEntry><a href="../files/OpenLayers/Util/vendorPrefix-js.html#OpenLayers.Util.vendorPrefix.js" target=_parent class=ISymbol>js</a>, <span class=IParent>OpenLayers.<wbr>Util.<wbr>vendorPrefix</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsL.html b/doc/devdocs/search/FunctionsL.html
index 5beb8ae..318343a 100644
--- a/doc/devdocs/search/FunctionsL.html
+++ b/doc/devdocs/search/FunctionsL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FunctionsM.html b/doc/devdocs/search/FunctionsM.html
index 0ef15bd..7f6d504 100644
--- a/doc/devdocs/search/FunctionsM.html
+++ b/doc/devdocs/search/FunctionsM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_makeSameOrigin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_makeSameOrigin')" class=ISymbol>makeSameOrigin</a><div class=ISubIndex><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.makeSameOrigin" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</a><a href="../files/OpenLayers/Request-j [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_makeSameOrigin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_makeSameOrigin')" class=ISymbol>makeSameOrigin</a><div class=ISubIndex><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.makeSameOrigin" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</a><a href="../files/OpenLayers/Request-j [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsN.html b/doc/devdocs/search/FunctionsN.html
index 63e5858..b35265f 100644
--- a/doc/devdocs/search/FunctionsN.html
+++ b/doc/devdocs/search/FunctionsN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FunctionsO.html b/doc/devdocs/search/FunctionsO.html
index c1d1df6..aace868 100644
--- a/doc/devdocs/search/FunctionsO.html
+++ b/doc/devdocs/search/FunctionsO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_object><div class=IEntry><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.serialize.object" target=_parent class=ISymbol>object</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>JSON.<wbr>serialize</span></div></div><div class=SRResult id=SR_observe><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Event.observ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_object><div class=IEntry><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.serialize.object" target=_parent class=ISymbol>object</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>JSON.<wbr>serialize</span></div></div><div class=SRResult id=SR_observe><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Event.observ [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsP.html b/doc/devdocs/search/FunctionsP.html
index b784e5c..7331d45 100644
--- a/doc/devdocs/search/FunctionsP.html
+++ b/doc/devdocs/search/FunctionsP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_page><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Strategy.Paging.page" target=_parent class=ISymbol>page</a>, <span class=IParent>OpenLayers.<wbr>Strategy.<wbr>Paging</span></div></div><div class=SRResult id=SR_pageCount><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Strategy.Paging.page [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_page><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Strategy.Paging.page" target=_parent class=ISymbol>page</a>, <span class=IParent>OpenLayers.<wbr>Strategy.<wbr>Paging</span></div></div><div class=SRResult id=SR_pageCount><div class=IEntry><a href="../files/OpenLayers/Strategy/Paging-js.html#OpenLayers.Strategy.Paging.page [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsQ.html b/doc/devdocs/search/FunctionsQ.html
index c98e4e4..fe38e98 100644
--- a/doc/devdocs/search/FunctionsQ.html
+++ b/doc/devdocs/search/FunctionsQ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_queuePotentialClick><div class=IEntry><a href="../files/OpenLayers/Handler/Click-js.html#OpenLayers.Handler.Click.queuePotentialClick" target=_parent class=ISymbol>queuePotentialClick</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>Click</span></div></div><div class=SRResult id=SR_queueTileDraw><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-j [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_queuePotentialClick><div class=IEntry><a href="../files/OpenLayers/Handler/Click-js.html#OpenLayers.Handler.Click.queuePotentialClick" target=_parent class=ISymbol>queuePotentialClick</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>Click</span></div></div><div class=SRResult id=SR_queueTileDraw><div class=IEntry><a href="../files/OpenLayers/TileManager- [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsR.html b/doc/devdocs/search/FunctionsR.html
index 4d75e68..9828b6d 100644
--- a/doc/devdocs/search/FunctionsR.html
+++ b/doc/devdocs/search/FunctionsR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_rad><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.rad" target=_parent class=ISymbol>rad</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_raiseLayer><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.raiseLayer" target=_parent class=ISymbol>raiseLayer</a>, <span class=IParent>OpenLayers.Map</sp [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_rad><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.rad" target=_parent class=ISymbol>rad</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_raiseLayer><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.raiseLayer" target=_parent class=ISymbol>raiseLayer</a>, <span class=IParent>OpenLayers.Map</sp [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsS.html b/doc/devdocs/search/FunctionsS.html
index 1ef1f9d..3ad2960 100644
--- a/doc/devdocs/search/FunctionsS.html
+++ b/doc/devdocs/search/FunctionsS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_safeStopPropagation><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Util.safeStopPropagation" target=_parent class=ISymbol>safeStopPropagation</a>, <span class=IParent>OpenLayers.Util</span></div></div><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_pa [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_safeStopPropagation><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Util.safeStopPropagation" target=_parent class=ISymbol>safeStopPropagation</a>, <span class=IParent>OpenLayers.Util</span></div></div><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_pa [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsSymbols.html b/doc/devdocs/search/FunctionsSymbols.html
index 6765dcd..d985347 100644
--- a/doc/devdocs/search/FunctionsSymbols.html
+++ b/doc/devdocs/search/FunctionsSymbols.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FunctionsT.html b/doc/devdocs/search/FunctionsT.html
index 1bf23e9..93bc65c 100644
--- a/doc/devdocs/search/FunctionsT.html
+++ b/doc/devdocs/search/FunctionsT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_testTarget><div class=IEntry><a href="../files/OpenLayers/Control/Snapping-js.html#OpenLayers.Control.Snapping.testTarget" target=_parent class=ISymbol>testTarget</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Snapping</span></div></div><div class=SRResult id=SR_time><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.time [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_testTarget><div class=IEntry><a href="../files/OpenLayers/Control/Snapping-js.html#OpenLayers.Control.Snapping.testTarget" target=_parent class=ISymbol>testTarget</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Snapping</span></div></div><div class=SRResult id=SR_time><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.time [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsU.html b/doc/devdocs/search/FunctionsU.html
index 768d8a5..6994f89 100644
--- a/doc/devdocs/search/FunctionsU.html
+++ b/doc/devdocs/search/FunctionsU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_un><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.un" target=_parent class=ISymbol>un</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_undo><div class=IEntry><a href="javascript:searchResults.Toggle('SR_undo')" class=ISymbol>undo</a><div class=ISubIndex><a href="../files/OpenLayers/Co [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_un><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.un" target=_parent class=ISymbol>un</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_undo><div class=IEntry><a href="javascript:searchResults.Toggle('SR_undo')" class=ISymbol>undo</a><div class=ISubIndex><a href="../files/OpenLayers/Co [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsV.html b/doc/devdocs/search/FunctionsV.html
index 36cb88d..1c19c2d 100644
--- a/doc/devdocs/search/FunctionsV.html
+++ b/doc/devdocs/search/FunctionsV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/FunctionsW.html b/doc/devdocs/search/FunctionsW.html
index baa3472..30c8452 100644
--- a/doc/devdocs/search/FunctionsW.html
+++ b/doc/devdocs/search/FunctionsW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>OpenLayers.<wbr>Console</span></div></div><div class=SRResult id=SR_WFST><div class=IEntry><a href="../files/OpenLayers/Format/WFST-js.html#OpenLayers.Format.WFST" target=_parent class=ISymbol>WFST</a>, <span  [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>OpenLayers.<wbr>Console</span></div></div><div class=SRResult id=SR_WFST><div class=IEntry><a href="../files/OpenLayers/Format/WFST-js.html#OpenLayers.Format.WFST" target=_parent class=ISymbol>WFST</a>, <span  [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/FunctionsZ.html b/doc/devdocs/search/FunctionsZ.html
index 2fbf3f3..cee2150 100644
--- a/doc/devdocs/search/FunctionsZ.html
+++ b/doc/devdocs/search/FunctionsZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Z_undORDER><div class=IEntry><a href="../files/OpenLayers/Renderer/Elements-js.html#OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER" target=_parent class=ISymbol>Z_ORDER</a>, <span class=IParent>OpenLayers.<wbr>ElementsIndexer.<wbr>IndexingMethods</span></div></div><div class=SRResult id=SR_Z_undORDER_undDRAWING_undORDER><div class=IEntry><a href="../files [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Z_undORDER><div class=IEntry><a href="../files/OpenLayers/Renderer/Elements-js.html#OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER" target=_parent class=ISymbol>Z_ORDER</a>, <span class=IParent>OpenLayers.<wbr>ElementsIndexer.<wbr>IndexingMethods</span></div></div><div class=SRResult id=SR_Z_undORDER_undDRAWING_undORDER><div class=IEntry><a href="../files [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralA.html b/doc/devdocs/search/GeneralA.html
index be6f522..bba0f37 100644
--- a/doc/devdocs/search/GeneralA.html
+++ b/doc/devdocs/search/GeneralA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol-js.html#OpenLayers.Protocol.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol</a><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IPare [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_abort><div class=IEntry><a href="javascript:searchResults.Toggle('SR_abort')" class=ISymbol>abort</a><div class=ISubIndex><a href="../files/OpenLayers/Protocol-js.html#OpenLayers.Protocol.abort" target=_parent class=IParent>OpenLayers.<wbr>Protocol</a><a href="../files/OpenLayers/Protocol/HTTP-js.html#OpenLayers.Protocol.HTTP.abort" target=_parent class=IPare [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralB.html b/doc/devdocs/search/GeneralB.html
index 975e52a..c1b1dd0 100644
--- a/doc/devdocs/search/GeneralB.html
+++ b/doc/devdocs/search/GeneralB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_backBuffer><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffer" target=_parent class=ISymbol>backBuffer</a>, <span class=IParent>OpenLayers.<wbr>Layer.Grid</span></div></div><div class=SRResult id=SR_backBufferLonLat><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffe [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_backBuffer><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffer" target=_parent class=ISymbol>backBuffer</a>, <span class=IParent>OpenLayers.<wbr>Layer.Grid</span></div></div><div class=SRResult id=SR_backBufferLonLat><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffe [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralC.html b/doc/devdocs/search/GeneralC.html
index 23f63f3..af6df95 100644
--- a/doc/devdocs/search/GeneralC.html
+++ b/doc/devdocs/search/GeneralC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cache><div class=IEntry><a href="javascript:searchResults.Toggle('SR_cache')" class=ISymbol>cache</a><div class=ISubIndex><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.cache" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</a><a href="../files/OpenLayers/Layer/Google-js.html#OpenLayers.Layer.Google. [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cache><div class=IEntry><a href="javascript:searchResults.Toggle('SR_cache')" class=ISymbol>cache</a><div class=ISubIndex><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.cache" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</a><a href="../files/OpenLayers/Events/featureclick-js.html#OpenLayers.Events [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralD.html b/doc/devdocs/search/GeneralD.html
index 60c43f1..dc476b5 100644
--- a/doc/devdocs/search/GeneralD.html
+++ b/doc/devdocs/search/GeneralD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_dashStyle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dashStyle')" class=ISymbol>dashStyle</a><div class=ISubIndex><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.dashStyle" target=_parent class=IParent>OpenLayers.<wbr>Renderer.SVG</a><a href="../files/deprecated-js.html#OpenLayers.Renderer.SVG2.dashStyle" target=_ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_dashStyle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dashStyle')" class=ISymbol>dashStyle</a><div class=ISubIndex><a href="../files/OpenLayers/Renderer/SVG-js.html#OpenLayers.Renderer.SVG.dashStyle" target=_parent class=IParent>OpenLayers.<wbr>Renderer.SVG</a><a href="../files/deprecated-js.html#OpenLayers.Renderer.SVG2.dashStyle" target=_ [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralE.html b/doc/devdocs/search/GeneralE.html
index 013be65..224e332 100644
--- a/doc/devdocs/search/GeneralE.html
+++ b/doc/devdocs/search/GeneralE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easeIn><div class=IEntry><a href="javascript:searchResults.Toggle('SR_easeIn')" class=ISymbol>easeIn</a><div class=ISubIndex><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Expo.easeIn" target=_parent class=IParent>OpenLayers.<wbr>Easing.Expo</a><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Linear.easeIn" target=_parent class=IPare [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easeIn><div class=IEntry><a href="javascript:searchResults.Toggle('SR_easeIn')" class=ISymbol>easeIn</a><div class=ISubIndex><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Expo.easeIn" target=_parent class=IParent>OpenLayers.<wbr>Easing.Expo</a><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Easing.Linear.easeIn" target=_parent class=IPare [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralF.html b/doc/devdocs/search/GeneralF.html
index 1ac8669..288a5c1 100644
--- a/doc/devdocs/search/GeneralF.html
+++ b/doc/devdocs/search/GeneralF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_failure><div class=IEntry><a href="../files/OpenLayers/Control/Geolocate-js.html#OpenLayers.Control.Geolocate.failure" target=_parent class=ISymbol>failure</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Geolocate</span></div></div><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=I [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_failure><div class=IEntry><a href="../files/OpenLayers/Control/Geolocate-js.html#OpenLayers.Control.Geolocate.failure" target=_parent class=ISymbol>failure</a>, <span class=IParent>OpenLayers.<wbr>Control.<wbr>Geolocate</span></div></div><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=I [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralG.html b/doc/devdocs/search/GeneralG.html
index f414c29..5330c8c 100644
--- a/doc/devdocs/search/GeneralG.html
+++ b/doc/devdocs/search/GeneralG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Gears><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.Gears.OpenLayers.Protocol.SQL.Gears" target=_parent class=ISymbol>Gears</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears.<wbr>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchRes [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Gears><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.Gears.OpenLayers.Protocol.SQL.Gears" target=_parent class=ISymbol>Gears</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears.<wbr>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchRes [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralH.html b/doc/devdocs/search/GeneralH.html
index 4539427..fdc71f4 100644
--- a/doc/devdocs/search/GeneralH.html
+++ b/doc/devdocs/search/GeneralH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_handle><div class=IEntry><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Feature.handle" target=_parent class=ISymbol>handle</a>,  [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_handle><div class=IEntry><a href="../files/OpenLayers/Handler/Feature-js.html#OpenLayers.Handler.Feature.handle" target=_parent class=ISymbol>handle</a>,  [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralI.html b/doc/devdocs/search/GeneralI.html
index 66c9d52..5ae4e9a 100644
--- a/doc/devdocs/search/GeneralI.html
+++ b/doc/devdocs/search/GeneralI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_i18n><div class=IEntry><a href="../files/OpenLayers/Lang-js.html#OpenLayers.Lang.OpenLayers.i18n" target=_parent class=ISymbol>i18n</a>, <span class=IParent>OpenLayers.<wbr>Lang.<wbr>OpenLayers</span></div></div><div class=SRResult id=SR_icon><div class=IEntry><a href="javascript:searchResults.Toggle('SR_icon')" class=ISymbol>icon</a><div class=ISubIndex><a h [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_i18n><div class=IEntry><a href="../files/OpenLayers/Lang-js.html#OpenLayers.Lang.OpenLayers.i18n" target=_parent class=ISymbol>i18n</a>, <span class=IParent>OpenLayers.<wbr>Lang.<wbr>OpenLayers</span></div></div><div class=SRResult id=SR_icon><div class=IEntry><a href="javascript:searchResults.Toggle('SR_icon')" class=ISymbol>icon</a><div class=ISubIndex><a h [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralJ.html b/doc/devdocs/search/GeneralJ.html
index f99b997..57ae074 100644
--- a/doc/devdocs/search/GeneralJ.html
+++ b/doc/devdocs/search/GeneralJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_json><div class=IEntry><a href="../files/OpenLayers/Tile/UTFGrid-js.html#OpenLayers.Tile.UTFGrid.json" target=_parent class=ISymbol>json</a>, <span class=IParent>OpenLayers.<wbr>Tile.<wbr>UTFGrid</span></div></div><div class=SRResult id=SR2_JSON><div class=IEntry><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.OpenLayers.Format.JSON" t [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_js><div class=IEntry><a href="../files/OpenLayers/Util/vendorPrefix-js.html#OpenLayers.Util.vendorPrefix.js" target=_parent class=ISymbol>js</a>, <span class=IParent>OpenLayers.<wbr>Util.<wbr>vendorPrefix</span></div></div><div class=SRResult id=SR_json><div class=IEntry><a href="../files/OpenLayers/Tile/UTFGrid-js.html#OpenLayers.Tile.UTFGrid.json" target=_p [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralK.html b/doc/devdocs/search/GeneralK.html
index 4966a36..26464e0 100644
--- a/doc/devdocs/search/GeneralK.html
+++ b/doc/devdocs/search/GeneralK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/GeneralL.html b/doc/devdocs/search/GeneralL.html
index f5dcd75..36286ee 100644
--- a/doc/devdocs/search/GeneralL.html
+++ b/doc/devdocs/search/GeneralL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_LABEL_undALIGN><div class=IEntry><a href="javascript:searchResults.Toggle('SR_LABEL_undALIGN')" class=ISymbol>LABE [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_LABEL_undALIGN><div class=IEntry><a href="javascript:searchResults.Toggle('SR_LABEL_undALIGN')" class=ISymbol>LABE [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralM.html b/doc/devdocs/search/GeneralM.html
index 67ffdc7..3aa0be3 100644
--- a/doc/devdocs/search/GeneralM.html
+++ b/doc/devdocs/search/GeneralM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_makeSameOrigin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_makeSameOrigin')" class=ISymbol>makeSameOrigin</a><div class=ISubIndex><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.makeSameOrigin" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</a><a href="../files/OpenLayers/Request-j [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_makeSameOrigin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_makeSameOrigin')" class=ISymbol>makeSameOrigin</a><div class=ISubIndex><a href="../files/OpenLayers/Control/CacheWrite-js.html#OpenLayers.Control.CacheWrite.makeSameOrigin" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>CacheWrite</a><a href="../files/OpenLayers/Request-j [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralN.html b/doc/devdocs/search/GeneralN.html
index 7e4d9cb..6c43b77 100644
--- a/doc/devdocs/search/GeneralN.html
+++ b/doc/devdocs/search/GeneralN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_name><div class=IEntry><a href="javascript:searchResults.Toggle('SR_name')" class=ISymbol>name</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Function-js.html#OpenLayers.Filter.Function.name" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Function</a><a href="../files/OpenLayers/Format/XML/VersionedOGC-js.html#OpenLayers.Format.XML.Vers [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_name><div class=IEntry><a href="javascript:searchResults.Toggle('SR_name')" class=ISymbol>name</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Function-js.html#OpenLayers.Filter.Function.name" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Function</a><a href="../files/OpenLayers/Format/XML/VersionedOGC-js.html#OpenLayers.Format.XML.Vers [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralO.html b/doc/devdocs/search/GeneralO.html
index 3b22597..da7fe8e 100644
--- a/doc/devdocs/search/GeneralO.html
+++ b/doc/devdocs/search/GeneralO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_object><div class=IEntry><a href="javascript:searchResults.Toggle('SR_object')" class=ISymbol>object</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.object" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.serialize.object" target=_parent class= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_object><div class=IEntry><a href="javascript:searchResults.Toggle('SR_object')" class=ISymbol>object</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.object" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Format/JSON-js.html#OpenLayers.Format.JSON.serialize.object" target=_parent class= [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralP.html b/doc/devdocs/search/GeneralP.html
index 29ac164..d2225b9 100644
--- a/doc/devdocs/search/GeneralP.html
+++ b/doc/devdocs/search/GeneralP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_padding><div class=IEntry><a href="../files/OpenLayers/Popup-js.html#OpenLayers.Popup.padding" target=_parent class=ISymbol>padding</a>, <span class=IParent>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_paddingForPopups><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.paddingForPopups" target=_parent class=ISymbol> [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_padding><div class=IEntry><a href="../files/OpenLayers/Popup-js.html#OpenLayers.Popup.padding" target=_parent class=ISymbol>padding</a>, <span class=IParent>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_paddingForPopups><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.paddingForPopups" target=_parent class=ISymbol> [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralQ.html b/doc/devdocs/search/GeneralQ.html
index 5c95336..a97a181 100644
--- a/doc/devdocs/search/GeneralQ.html
+++ b/doc/devdocs/search/GeneralQ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Query><div class=IEntry><a href="../files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html#OpenLayers.Format.CSWGetRecords.v2_0_2.Query" target=_parent class=ISymbol>Query</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</span></div></div><div class=SRResult id=SR_queryVisible><div class=IEntry><a href="javascript:searchResults.Tog [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Query><div class=IEntry><a href="../files/OpenLayers/Format/CSWGetRecords/v2_0_2-js.html#OpenLayers.Format.CSWGetRecords.v2_0_2.Query" target=_parent class=ISymbol>Query</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>CSWGetRecords.<wbr>v2_0_2</span></div></div><div class=SRResult id=SR_queryVisible><div class=IEntry><a href="javascript:searchResults.Tog [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralR.html b/doc/devdocs/search/GeneralR.html
index c68c3fb..3bfc113 100644
--- a/doc/devdocs/search/GeneralR.html
+++ b/doc/devdocs/search/GeneralR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_rad><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.rad" target=_parent class=ISymbol>rad</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class= [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_rad><div class=IEntry><a href="../files/OpenLayers/Util-js.html#Util.rad" target=_parent class=ISymbol>rad</a>, <span class=IParent>Util</span></div></div><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class= [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralS.html b/doc/devdocs/search/GeneralS.html
index f3bcf47..c12d91c 100644
--- a/doc/devdocs/search/GeneralS.html
+++ b/doc/devdocs/search/GeneralS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_safeStopPropagation><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Util.safeStopPropagation" target=_parent class=ISymbol>safeStopPropagation</a>, <span class=IParent>OpenLayers.Util</span></div></div><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_pa [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_safeStopPropagation><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Util.safeStopPropagation" target=_parent class=ISymbol>safeStopPropagation</a>, <span class=IParent>OpenLayers.Util</span></div></div><div class=SRResult id=SR_save><div class=IEntry><a href="../files/OpenLayers/Strategy/Save-js.html#OpenLayers.Strategy.Save.save" target=_pa [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralSymbols.html b/doc/devdocs/search/GeneralSymbols.html
index 78f13f7..5fef926 100644
--- a/doc/devdocs/search/GeneralSymbols.html
+++ b/doc/devdocs/search/GeneralSymbols.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/GeneralT.html b/doc/devdocs/search/GeneralT.html
index 9e2d03c..708cd23 100644
--- a/doc/devdocs/search/GeneralT.html
+++ b/doc/devdocs/search/GeneralT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_target><div class=IEntry><a href="../files/OpenLayers/Events/buttonclick-js.html#OpenLayers.Events.buttonclick.target" targe [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_target><div class=IEntry><a href="../files/OpenLayers/Events/buttonclick-js.html#OpenLayers.Events.buttonclick.target" targe [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralU.html b/doc/devdocs/search/GeneralU.html
index ea81a93..3891e2c 100644
--- a/doc/devdocs/search/GeneralU.html
+++ b/doc/devdocs/search/GeneralU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_un><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.un" target=_parent class=ISymbol>un</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_undo><div class=IEntry><a href="javascript:searchResults.Toggle('SR_undo')" class=ISymbol>undo</a><div class=ISubIndex><a href="../files/OpenLayers/Co [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_un><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.un" target=_parent class=ISymbol>un</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_undo><div class=IEntry><a href="javascript:searchResults.Toggle('SR_undo')" class=ISymbol>undo</a><div class=ISubIndex><a href="../files/OpenLayers/Co [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralV.html b/doc/devdocs/search/GeneralV.html
index 7cad17a..d87c517 100644
--- a/doc/devdocs/search/GeneralV.html
+++ b/doc/devdocs/search/GeneralV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_v0_und3_und1><div class=IEntry><a href="../files/OpenLayers/Format/OWSContext/v0_3_1-js.html#OpenLayers.Format.OWSContext.v0_3_1.OpenLayers.Format.OWSContext.v0_3_1" target=_parent class=ISymbol>v0_3_1</a>, <span class=IParent>OpenLayers.<wbr>Format.<wbr>OWSContext.<wbr>v0_3_1.<wbr>OpenLayers.<wbr>Format.<wbr>OWSContext</span></div></div><div class=SRResult i [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralW.html b/doc/devdocs/search/GeneralW.html
index b69ec72..0600e36 100644
--- a/doc/devdocs/search/GeneralW.html
+++ b/doc/devdocs/search/GeneralW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_w><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.w" target=_parent class=ISymbol>w</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>Op [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_w><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.w" target=_parent class=ISymbol>w</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_warn><div class=IEntry><a href="../files/OpenLayers/Console-js.html#OpenLayers.Console.warn" target=_parent class=ISymbol>warn</a>, <span class=IParent>Op [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/GeneralX.html b/doc/devdocs/search/GeneralX.html
index 0261625..4228aef 100644
--- a/doc/devdocs/search/GeneralX.html
+++ b/doc/devdocs/search/GeneralX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/GeneralY.html b/doc/devdocs/search/GeneralY.html
index 74558f8..d5999d0 100644
--- a/doc/devdocs/search/GeneralY.html
+++ b/doc/devdocs/search/GeneralY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/GeneralZ.html b/doc/devdocs/search/GeneralZ.html
index 2ab423e..4d5a3f1 100644
--- a/doc/devdocs/search/GeneralZ.html
+++ b/doc/devdocs/search/GeneralZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Z_undINDEX_undBASE><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.Z_INDEX_BASE" target=_parent class=ISymbol>Z_INDEX_BASE</a>, <span class=IParent>OpenLayers.Map</span></div></div><div class=SRResult id=SR_Z_undORDER><div class=IEntry><a href="../files/OpenLayers/Renderer/Elements-js.html#OpenLayers.ElementsIndexer.IndexingMethods.Z [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Z_undINDEX_undBASE><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.Z_INDEX_BASE" target=_parent class=ISymbol>Z_INDEX_BASE</a>, <span class=IParent>OpenLayers.Map</span></div></div><div class=SRResult id=SR_Z_undORDER><div class=IEntry><a href="../files/OpenLayers/Renderer/Elements-js.html#OpenLayers.ElementsIndexer.IndexingMethods.Z [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/NoResults.html b/doc/devdocs/search/NoResults.html
index 8c72496..5ce7717 100644
--- a/doc/devdocs/search/NoResults.html
+++ b/doc/devdocs/search/NoResults.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesA.html b/doc/devdocs/search/PropertiesA.html
index 3abea20..0427001 100644
--- a/doc/devdocs/search/PropertiesA.html
+++ b/doc/devdocs/search/PropertiesA.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_active><div class=IEntry><a href="javascript:searchResults.Toggle('SR_active')" class=ISymbol>active</a><div class=ISubIndex><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.active" target=_parent class=IParent>OpenLayers.<wbr>Control</a><a href="../files/OpenLayers/Handler-js.html#OpenLayers.Handler.active" target=_parent class=IParent>OpenLay [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_active><div class=IEntry><a href="javascript:searchResults.Toggle('SR_active')" class=ISymbol>active</a><div class=ISubIndex><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.active" target=_parent class=IParent>OpenLayers.<wbr>Control</a><a href="../files/OpenLayers/Handler-js.html#OpenLayers.Handler.active" target=_parent class=IParent>OpenLay [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesB.html b/doc/devdocs/search/PropertiesB.html
index 9a8efd3..b60e639 100644
--- a/doc/devdocs/search/PropertiesB.html
+++ b/doc/devdocs/search/PropertiesB.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_backBuffer><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffer" target=_parent class=ISymbol>backBuffer</a>, <span class=IParent>OpenLayers.<wbr>Layer.Grid</span></div></div><div class=SRResult id=SR_backBufferLonLat><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffe [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_backBuffer><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffer" target=_parent class=ISymbol>backBuffer</a>, <span class=IParent>OpenLayers.<wbr>Layer.Grid</span></div></div><div class=SRResult id=SR_backBufferLonLat><div class=IEntry><a href="../files/OpenLayers/Layer/Grid-js.html#OpenLayers.Layer.Grid.backBuffe [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesC.html b/doc/devdocs/search/PropertiesC.html
index 51d8079..1ff1bf8 100644
--- a/doc/devdocs/search/PropertiesC.html
+++ b/doc/devdocs/search/PropertiesC.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cache><div class=IEntry><a href="javascript:searchResults.Toggle('SR_cache')" class=ISymbol>cache</a><div class=ISubIndex><a href="../files/OpenLayers/Layer/Google-js.html#OpenLayers.Layer.Google.OpenLayers.Layer.Google.cache" target=_parent class=IParent>OpenLayers.<wbr>Layer.<wbr>Google.<wbr>OpenLayers.<wbr>Layer.<wbr>Google</a><a href="../files/OpenLayers/ [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_cache><div class=IEntry><a href="javascript:searchResults.Toggle('SR_cache')" class=ISymbol>cache</a><div class=ISubIndex><a href="../files/OpenLayers/Events/featureclick-js.html#OpenLayers.Events.featureclick.cache" target=_parent class=IParent>OpenLayers.<wbr>Events.<wbr>featureclick</a><a href="../files/OpenLayers/Layer/Google-js.html#OpenLayers.Layer.Goog [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesD.html b/doc/devdocs/search/PropertiesD.html
index 2286332..9622c3f 100644
--- a/doc/devdocs/search/PropertiesD.html
+++ b/doc/devdocs/search/PropertiesD.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="javascript:searchResults.Toggle('SR_data')" class=ISymbol>data</a><div class=ISubIndex><a href="../files/OpenLayers/Feature-js.html#OpenLayers.Feature.data" target=_parent class=IParent>OpenLayers.<wbr>Feature</a><a href="../files/OpenLayers/Format-js.html#OpenLayers.Format.data" target=_parent class=IParent>OpenLayers.<wbr>For [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="javascript:searchResults.Toggle('SR_data')" class=ISymbol>data</a><div class=ISubIndex><a href="../files/OpenLayers/Feature-js.html#OpenLayers.Feature.data" target=_parent class=IParent>OpenLayers.<wbr>Feature</a><a href="../files/OpenLayers/Format-js.html#OpenLayers.Format.data" target=_parent class=IParent>OpenLayers.<wbr>For [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesE.html b/doc/devdocs/search/PropertiesE.html
index cec2d41..27b183b 100644
--- a/doc/devdocs/search/PropertiesE.html
+++ b/doc/devdocs/search/PropertiesE.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easing><div class=IEntry><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Tween.easing" target=_parent class=ISymbol>easing</a>, <span class=IParent>OpenLayers.<wbr>Tween</span></div></div><div class=SRResult id=SR_eBottom><div class=IEntry><a href="../files/OpenLayers/Control/ScaleLine-js.html#OpenLayers.Control.ScaleLine.eBottom" target=_parent class=I [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_easing><div class=IEntry><a href="../files/OpenLayers/Tween-js.html#OpenLayers.Tween.easing" target=_parent class=ISymbol>easing</a>, <span class=IParent>OpenLayers.<wbr>Tween</span></div></div><div class=SRResult id=SR_eBottom><div class=IEntry><a href="../files/OpenLayers/Control/ScaleLine-js.html#OpenLayers.Control.ScaleLine.eBottom" target=_parent class=I [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesF.html b/doc/devdocs/search/PropertiesF.html
index 66af38c..c8e5ed0 100644
--- a/doc/devdocs/search/PropertiesF.html
+++ b/doc/devdocs/search/PropertiesF.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=ISymbol>fallThrough</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.fallThrough" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.fallThrough" target=_parent class=I [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fallThrough><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fallThrough')" class=ISymbol>fallThrough</a><div class=ISubIndex><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.fallThrough" target=_parent class=IParent>OpenLayers.<wbr>Events</a><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.fallThrough" target=_parent class=I [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesG.html b/doc/devdocs/search/PropertiesG.html
index 3097ef8..acfc336 100644
--- a/doc/devdocs/search/PropertiesG.html
+++ b/doc/devdocs/search/PropertiesG.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchResults.Toggle('SR_geodesic')" class=ISymbol>geodesic</a><div class=ISubIndex><a href="../files/OpenLayers/Control/Measure-js.html#OpenLayers.Control.Measure.geodesic" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>Measure</a><a href="../files/OpenLayers/Control/Scale-js.html#OpenLayers.Control.S [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_geodesic><div class=IEntry><a href="javascript:searchResults.Toggle('SR_geodesic')" class=ISymbol>geodesic</a><div class=ISubIndex><a href="../files/OpenLayers/Control/Measure-js.html#OpenLayers.Control.Measure.geodesic" target=_parent class=IParent>OpenLayers.<wbr>Control.<wbr>Measure</a><a href="../files/OpenLayers/Control/Scale-js.html#OpenLayers.Control.S [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesH.html b/doc/devdocs/search/PropertiesH.html
index 4cd3b9e..247e45b 100644
--- a/doc/devdocs/search/PropertiesH.html
+++ b/doc/devdocs/search/PropertiesH.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_handler><div class=IEntry><a href="javascript:searchResults.Toggle('SR_handler')" class=ISymbol>handler</a><div class=ISubIndex><a href="../files/OpenLaye [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_h><div class=IEntry><a href="../files/OpenLayers/BaseTypes/Size-js.html#OpenLayers.Size.h" target=_parent class=ISymbol>h</a>, <span class=IParent>OpenLayers.Size</span></div></div><div class=SRResult id=SR_handler><div class=IEntry><a href="javascript:searchResults.Toggle('SR_handler')" class=ISymbol>handler</a><div class=ISubIndex><a href="../files/OpenLaye [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesI.html b/doc/devdocs/search/PropertiesI.html
index 0c28c21..d2ceb76 100644
--- a/doc/devdocs/search/PropertiesI.html
+++ b/doc/devdocs/search/PropertiesI.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_icon><div class=IEntry><a href="javascript:searchResults.Toggle('SR_icon')" class=ISymbol>icon</a><div class=ISubIndex><a href="../files/OpenLayers/Layer/GeoRSS-js.html#OpenLayers.Layer.GeoRSS.icon" target=_parent class=IParent>OpenLayers.<wbr>Layer.<wbr>GeoRSS</a><a href="../files/OpenLayers/Marker-js.html#OpenLayers.Marker.icon" target=_parent class=IParent [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_icon><div class=IEntry><a href="javascript:searchResults.Toggle('SR_icon')" class=ISymbol>icon</a><div class=ISubIndex><a href="../files/OpenLayers/Layer/GeoRSS-js.html#OpenLayers.Layer.GeoRSS.icon" target=_parent class=IParent>OpenLayers.<wbr>Layer.<wbr>GeoRSS</a><a href="../files/OpenLayers/Marker-js.html#OpenLayers.Marker.icon" target=_parent class=IParent [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesJ.html b/doc/devdocs/search/PropertiesJ.html
index 4f801f6..7a2b2a7 100644
--- a/doc/devdocs/search/PropertiesJ.html
+++ b/doc/devdocs/search/PropertiesJ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesK.html b/doc/devdocs/search/PropertiesK.html
index 1c61391..ddbec31 100644
--- a/doc/devdocs/search/PropertiesK.html
+++ b/doc/devdocs/search/PropertiesK.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesL.html b/doc/devdocs/search/PropertiesL.html
index db71e44..3472bed 100644
--- a/doc/devdocs/search/PropertiesL.html
+++ b/doc/devdocs/search/PropertiesL.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_labelFormat><div class=IEntry><a href="../files/OpenLayers/Control/Graticule-js.html#OpenLayers.Control.Graticule. [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="../files/OpenLayers/Symbolizer/Text-js.html#OpenLayers.Symbolizer.Text.label" target=_parent class=ISymbol>label</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer.Text</span></div></div><div class=SRResult id=SR_labelFormat><div class=IEntry><a href="../files/OpenLayers/Control/Graticule-js.html#OpenLayers.Control.Graticule. [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesM.html b/doc/devdocs/search/PropertiesM.html
index f4699f7..c0bcecb 100644
--- a/doc/devdocs/search/PropertiesM.html
+++ b/doc/devdocs/search/PropertiesM.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map><div class=IEntry><a href="javascript:searchResults.Toggle('SR_map')" class=ISymbol>map</a><div class=ISubIndex><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.map" target=_parent class=IParent>OpenLayers.<wbr>Control</a><a href="../files/OpenLayers/Handler-js.html#OpenLayers.Handler.map" target=_parent class=IParent>OpenLayers.<wbr>Handle [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map><div class=IEntry><a href="javascript:searchResults.Toggle('SR_map')" class=ISymbol>map</a><div class=ISubIndex><a href="../files/OpenLayers/Control-js.html#OpenLayers.Control.map" target=_parent class=IParent>OpenLayers.<wbr>Control</a><a href="../files/OpenLayers/Events/featureclick-js.html#OpenLayers.Events.featureclick.map" target=_parent class=IParen [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesN.html b/doc/devdocs/search/PropertiesN.html
index dba8daa..c09da34 100644
--- a/doc/devdocs/search/PropertiesN.html
+++ b/doc/devdocs/search/PropertiesN.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_name><div class=IEntry><a href="javascript:searchResults.Toggle('SR_name')" class=ISymbol>name</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Function-js.html#OpenLayers.Filter.Function.name" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Function</a><a href="../files/OpenLayers/Format/XML/VersionedOGC-js.html#OpenLayers.Format.XML.Vers [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_name><div class=IEntry><a href="javascript:searchResults.Toggle('SR_name')" class=ISymbol>name</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Function-js.html#OpenLayers.Filter.Function.name" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Function</a><a href="../files/OpenLayers/Format/XML/VersionedOGC-js.html#OpenLayers.Format.XML.Vers [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesO.html b/doc/devdocs/search/PropertiesO.html
index 0a5dbd6..836618b 100644
--- a/doc/devdocs/search/PropertiesO.html
+++ b/doc/devdocs/search/PropertiesO.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_object><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.object" target=_parent class=ISymbol>object</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_observeElement><div class=IEntry><a href="javascript:searchResults.Toggle('SR_observeElement')" class=ISymbol>observeElement</a><div class [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_object><div class=IEntry><a href="../files/OpenLayers/Events-js.html#OpenLayers.Events.object" target=_parent class=ISymbol>object</a>, <span class=IParent>OpenLayers.<wbr>Events</span></div></div><div class=SRResult id=SR_observeElement><div class=IEntry><a href="javascript:searchResults.Toggle('SR_observeElement')" class=ISymbol>observeElement</a><div class [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesP.html b/doc/devdocs/search/PropertiesP.html
index e0994da..c44f167 100644
--- a/doc/devdocs/search/PropertiesP.html
+++ b/doc/devdocs/search/PropertiesP.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_padding><div class=IEntry><a href="../files/OpenLayers/Popup-js.html#OpenLayers.Popup.padding" target=_parent class=ISymbol>padding</a>, <span class=IParent>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_paddingForPopups><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.paddingForPopups" target=_parent class=ISymbol> [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_padding><div class=IEntry><a href="../files/OpenLayers/Popup-js.html#OpenLayers.Popup.padding" target=_parent class=ISymbol>padding</a>, <span class=IParent>OpenLayers.<wbr>Popup</span></div></div><div class=SRResult id=SR_paddingForPopups><div class=IEntry><a href="../files/OpenLayers/Map-js.html#OpenLayers.Map.paddingForPopups" target=_parent class=ISymbol> [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesQ.html b/doc/devdocs/search/PropertiesQ.html
index c81b892..7b66262 100644
--- a/doc/devdocs/search/PropertiesQ.html
+++ b/doc/devdocs/search/PropertiesQ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesR.html b/doc/devdocs/search/PropertiesR.html
index 0c0d129..8397fa5 100644
--- a/doc/devdocs/search/PropertiesR.html
+++ b/doc/devdocs/search/PropertiesR.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>RegularPolygon</span></div></div><div class=SRResult id=SR_radiusHandle><div class=IEntry><a href="../files/OpenLayers/Control/ModifyFeature-js. [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_radius><div class=IEntry><a href="../files/OpenLayers/Handler/RegularPolygon-js.html#OpenLayers.Handler.RegularPolygon.radius" target=_parent class=ISymbol>radius</a>, <span class=IParent>OpenLayers.<wbr>Handler.<wbr>RegularPolygon</span></div></div><div class=SRResult id=SR_radiusHandle><div class=IEntry><a href="../files/OpenLayers/Control/ModifyFeature-js. [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesS.html b/doc/devdocs/search/PropertiesS.html
index 637db9b..6f8aaad 100644
--- a/doc/devdocs/search/PropertiesS.html
+++ b/doc/devdocs/search/PropertiesS.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_saveFeatureState><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.Gears.saveFeatureState" target=_parent class=ISymbol>saveFeatureState</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears</span></div></div><div class=SRResult id=SR_saveState><div class=IEntry><a href="../files/OpenLayers/Control/Panel-js.html#Op [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_saveFeatureState><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.Gears.saveFeatureState" target=_parent class=ISymbol>saveFeatureState</a>, <span class=IParent>OpenLayers.<wbr>Protocol.<wbr>SQL.<wbr>Gears</span></div></div><div class=SRResult id=SR_saveState><div class=IEntry><a href="../files/OpenLayers/Control/Panel-js.html#Op [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesSymbols.html b/doc/devdocs/search/PropertiesSymbols.html
index 30bc726..592a18a 100644
--- a/doc/devdocs/search/PropertiesSymbols.html
+++ b/doc/devdocs/search/PropertiesSymbols.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesT.html b/doc/devdocs/search/PropertiesT.html
index 2507e29..e93a9d9 100644
--- a/doc/devdocs/search/PropertiesT.html
+++ b/doc/devdocs/search/PropertiesT.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_target><div class=IEntry><a href="../files/OpenLayers/Events/buttonclick-js.html#OpenLayers.Events.buttonclick.target" targe [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_tableName><div class=IEntry><a href="../files/deprecated-js.html#OpenLayers.Protocol.SQL.tableName" target=_parent class=ISymbol>tableName</a>, <span class=IParent>OpenLayers.<wbr>Protocol.SQL</span></div></div><div class=SRResult id=SR_target><div class=IEntry><a href="../files/OpenLayers/Events/buttonclick-js.html#OpenLayers.Events.buttonclick.target" targe [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesU.html b/doc/devdocs/search/PropertiesU.html
index fb2faa2..107af42 100644
--- a/doc/devdocs/search/PropertiesU.html
+++ b/doc/devdocs/search/PropertiesU.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesV.html b/doc/devdocs/search/PropertiesV.html
index 45bfdfe..5c758c3 100644
--- a/doc/devdocs/search/PropertiesV.html
+++ b/doc/devdocs/search/PropertiesV.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_value><div class=IEntry><a href="javascript:searchResults.Toggle('SR_value')" class=ISymbol>value</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Comparison-js.html#OpenLayers.Filter.Comparison.value" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Comparison</a><a href="../files/OpenLayers/Filter/Spatial-js.html#OpenLayers.Filter.Spatial [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_value><div class=IEntry><a href="javascript:searchResults.Toggle('SR_value')" class=ISymbol>value</a><div class=ISubIndex><a href="../files/OpenLayers/Filter/Comparison-js.html#OpenLayers.Filter.Comparison.value" target=_parent class=IParent>OpenLayers.<wbr>Filter.<wbr>Comparison</a><a href="../files/OpenLayers/Filter/Spatial-js.html#OpenLayers.Filter.Spatial [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc/devdocs/search/PropertiesW.html b/doc/devdocs/search/PropertiesW.html
index dd2c883..ae4ddba 100644
--- a/doc/devdocs/search/PropertiesW.html
+++ b/doc/devdocs/search/PropertiesW.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesX.html b/doc/devdocs/search/PropertiesX.html
index 7feaa01..d0a854d 100644
--- a/doc/devdocs/search/PropertiesX.html
+++ b/doc/devdocs/search/PropertiesX.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesY.html b/doc/devdocs/search/PropertiesY.html
index a3eaf5f..b17af05 100644
--- a/doc/devdocs/search/PropertiesY.html
+++ b/doc/devdocs/search/PropertiesY.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
diff --git a/doc/devdocs/search/PropertiesZ.html b/doc/devdocs/search/PropertiesZ.html
index ce7231d..a6cc3ba 100644
--- a/doc/devdocs/search/PropertiesZ.html
+++ b/doc/devdocs/search/PropertiesZ.html
@@ -3,7 +3,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
 if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
 
-<!--  Generated by Natural Docs, version 1.52 -->
+<!--  Generated by Natural Docs, version 1.51 -->
 <!--  http://www.naturaldocs.org  -->
 
 <!-- saved from url=(0026)http://www.naturaldocs.org -->
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zIndex><div class=IEntry><a href="../files/OpenLayers/Symbolizer-js.html#OpenLayers.Symbolizer.zIndex" target=_parent class=ISymbol>zIndex</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer</span></div></div><div class=SRResult id=SR_zoom><div class=IEntry><a href="javascript:searchResults.Toggle('SR_zoom')" class=ISymbol>zoom</a><div class=ISubIndex><a href [...]
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zIndex><div class=IEntry><a href="../files/OpenLayers/Symbolizer-js.html#OpenLayers.Symbolizer.zIndex" target=_parent class=ISymbol>zIndex</a>, <span class=IParent>OpenLayers.<wbr>Symbolizer</span></div></div><div class=SRResult id=SR_zoom><div class=IEntry><a href="javascript:searchResults.Toggle('SR_zoom')" class=ISymbol>zoom</a><div class=ISubIndex><a href [...]
 document.getElementById("Loading").style.display="none";
 document.getElementById("NoMatches").style.display="none";
 var searchResults = new SearchResults("searchResults", "HTML");
diff --git a/doc_config/Data/ClassHierarchy.nd b/doc_config/Data/ClassHierarchy.nd
index 0cb6547..5215dd3 100644
Binary files a/doc_config/Data/ClassHierarchy.nd and b/doc_config/Data/ClassHierarchy.nd differ
diff --git a/doc_config/Data/ConfigFileInfo.nd b/doc_config/Data/ConfigFileInfo.nd
index 37c0092..f379196 100644
Binary files a/doc_config/Data/ConfigFileInfo.nd and b/doc_config/Data/ConfigFileInfo.nd differ
diff --git a/doc_config/Data/FileInfo.nd b/doc_config/Data/FileInfo.nd
index 4c8d2b1..cce86ce 100644
--- a/doc_config/Data/FileInfo.nd
+++ b/doc_config/Data/FileInfo.nd
@@ -1,313 +1,323 @@
-1.52
+1.51
 JavaScript
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/MultiLineString.js	1340830591	1	OpenLayers.Geometry.MultiLineString
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/cs-CZ.js	1340830591	1	OpenLayers.Lang["cs-CZ"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Pan.js	1340830591	1	OpenLayers.Control.Pan
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/KaMap.js	1340830591	1	OpenLayers.Layer.KaMap
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Scale.js	1340830591	1	OpenLayers.Control.Scale
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/FixedZoomLevels.js	1340830591	1	OpenLayers.Layer.FixedZoomLevels
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/SelectFeature.js	1340830591	1	OpenLayers.Control.SelectFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.WPSCapabilities.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ModifyFeature.js	1340830591	1	OpenLayers.Control.ModifyFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tween.js	1340830591	1	OpenLayers.Tween
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Style.js	1340830591	1	OpenLayers.Style
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD.js	1340830591	1	OpenLayers.Format.SLD
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/Framed.js	1340830591	1	OpenLayers.Popup.Framed
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Marker/Box.js	1340830591	1	OpenLayers.Marker.Box
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1.js	1340830591	1	OpenLayers.Format.WMSCapabilities.v1_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetDomain.js	1340830591	1	OpenLayers.Format.CSWGetDomain
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy.js	1340830591	1	OpenLayers.Strategy
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS/v1.js	1340830591	1	OpenLayers.Protocol.WFS.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/HTTPRequest.js	1340830591	1	OpenLayers.Layer.HTTPRequest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Geolocate.js	1340830591	1	OpenLayers.Control.Geolocate
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup.js	1340830591	1	OpenLayers.Popup
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/HTTP.js	1340830591	1	OpenLayers.Protocol.HTTP
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/zh-CN.js	1340830591	1	OpenLayers.Lang["zh-CN"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/CSW.js	1340830591	1	OpenLayers.Protocol.CSW
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/DragPan.js	1340830591	1	OpenLayers.Control.DragPan
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Events/buttonclick.js	1340830591	1	OpenLayers.Events.buttonclick
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.WMTSCapabilities.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format.js	1340830591	1	OpenLayers.Format
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GeoJSON.js	1340830591	1	OpenLayers.Format.GeoJSON
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/gl.js	1340830591	1	OpenLayers.Lang["gl"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/QueryStringFilter.js	1340830591	1	OpenLayers.Format.QueryStringFilter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Keyboard.js	1340830591	1	OpenLayers.handler.Keyboard
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ca.js	1340830591	1	OpenLayers.Lang["ca"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/OverviewMap.js	1340830591	1	OpenLayers.Control.OverviewMap
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSCapabilities.js	1340830591	1	OpenLayers.Format.SOSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control.js	1340830591	1	OpenLayers.Control
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST/v1_1_0.js	1340830591	1	OpenLayers.Format.WFST.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/PointTrack.js	1340830591	1	OpenLayers.Layer.PointTrack
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/Elements.js	1340830591	1	OpenLayers.ElementsIndexer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Icon.js	1340830591	1	OpenLayers.Icon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/WMTS.js	1340830591	1	OpenLayers.Layer.WMTS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Path.js	1340830591	1	OpenLayers.Handler.Path
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/TMS.js	1340830591	1	OpenLayers.Layer.TMS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGISCache.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGISCache.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nl.js	1340830591	1	OpenLayers.Lang["nl"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OGCExceptionReport.js	1340830591	1	OpenLayers.Format.OGCExceptionReport
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Grid.js	1340830591	1	OpenLayers.Layer.Grid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/SOS.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/SOS.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ru.js	1340830591	1	OpenLayers.Lang["ru"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1.js	1340830591	1	OpenLayers.Format.WMSCapabilities.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon/v1.js	1340830591	1	OpenLayers.Format.OWSCommon.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/Image.js	1340830591	1	OpenLayers.Tile.Image
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomPanel.js	1340830591	1	OpenLayers.Control.ZoomPanel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/da-DK.js	1340830591	1	OpenLayers.Lang["da-DK"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS.js	1340830591	1	OpenLayers.Protocol.WFS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/NavigationHistory.js	1340830591	1	OpenLayers.Control.NavigationHistory
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Boxes.js	1340830591	1	OpenLayers.Layer.Boxes
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/MousePosition.js	1340830591	1	OpenLayers.Control.MousePosition
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC.js	1340830591	1	OpenLayers.Format.WMC
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon/v1_1_0.js	1340830591	1	OpenLayers.Format.OWSCommon.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/Image/IFrame.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/Image/IFrame.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/Anchored.js	1340830591	1	OpenLayers.Popup.Anchored
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS/v1_1_0.js	1340830591	1	OpenLayers.Protocol.WFS.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ScaleLine.js	1340830591	1	OpenLayers.Control.ScaleLine
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Bounds.js	1340830591	1	OpenLayers.Bounds
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Save.js	1340830591	1	OpenLayers.Strategy.Save
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/vi.js	1340830591	1	OpenLayers.Lang["vi"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Snapping.js	1340830591	1	OpenLayers.Control.Snapping
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang.js	1340830591	1	OpenLayers.Lang
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon.js	1340830591	1	OpenLayers.Format.OWSCommon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/es.js	1340830591	1	OpenLayers.Lang["es"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Events.js	1340830591	1	OpenLayers.Event
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers.js	1340830591	1	OpenLayers
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/PointGrid.js	1340830591	1	OpenLayers.Layer.PointGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/SphericalMercator.js	1340830591	1	OpenLayers.Layer.SphericalMercator
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/bg.js	1340830591	1	OpenLayers.Lang["bg"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSContext/v0_3_1.js	1340830591	1	OpenLayers.Format.OWSContext.v0_3_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Vector.js	1340830591	1	OpenLayers.Layer.Vector
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_3.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_3
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PanZoom.js	1340830591	1	OpenLayers.Control.PanZoom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD/v1.js	1340830591	1	OpenLayers.Format.SLD.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/WFS/v1_0_0.js	1340830591	1	OpenLayers.Protocol.WFS.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/fur.js	1340830591	1	OpenLayers.Lang["fur"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/de.js	1340830591	1	OpenLayers.Lang["de"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/GetFeature.js	1340830591	1	OpenLayers.Control.GetFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFS.js	1340830591	1	OpenLayers.Format.WFS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Attribution.js	1340830591	1	OpenLayers.Control.Attribution
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities.js	1340830591	1	OpenLayers.Format.WFSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomOut.js	1340830591	1	OpenLayers.Control.ZoomOut
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes.js	1340830591	1	OpenLayers Base Types
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/TransformFeature.js	1340830591	1	OpenLayers.Control.TransformFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Atom.js	1340830591	1	OpenLayers.Format.Atom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/id.js	1340830591	1	OpenLayers.Lang["id"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry.js	1340830591	1	OpenLayers.Geometry
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/UTFGrid.js	1340830591	1	OpenLayers.Control.UTFGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Refresh.js	1340830591	1	OpenLayers.Strategy.Refresh
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Permalink.js	1340830591	1	OpenLayers.Control.Permalink
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/CSW/v2_0_2.js	1340830591	1	OpenLayers.Protocol.CSW.v2_0_2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/SOS/v1_0_0.js	1340830591	1	OpenLayers.Protocol.SOS.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/oc.js	1340830591	1	OpenLayers.Lang["oc"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_3_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/BBOX.js	1340830591	1	OpenLayers.Strategy.BBOX
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/pt.js	1340830591	1	OpenLayers.Lang["pt"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSCapabilities.js	1340830591	1	OpenLayers.Format.WPSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js	1340830591	1	OpenLayers.Format.SLD/v1_0_0_GeoServer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/SLDSelect.js	1340830591	1	OpenLayers.Control.SLDSelect
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Map.js	1340830591	1	OpenLayers.Map
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer.js	1340830591	1	OpenLayers.Symbolizer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/MapServer.js	1340830591	1	OpenLayers.Layer.MapServer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Style2.js	1340830591	1	OpenLayers.Style2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcGIS93Rest.js	1340830591	1	OpenLayers.Layer.ArcGIS93Rest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/UTFGrid.js	1340830591	1	OpenLayers.Layer.UTFGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSDescribeProcess.js	1340830591	1	OpenLayers.Format.WPSDescribeProcess
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/hr.js	1340830591	1	OpenLayers.Lang["hr"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomBox.js	1340830591	1	OpenLayers.Control.ZoomBox
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMTSCapabilities.js	1340830591	1	OpenLayers.Format.WMTSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter/v1_1_0.js	1340830591	1	OpenLayers.Format.Filter.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/en-CA.js	1340830591	1	OpenLayers.Lang["en-CA"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Marker.js	1340830591	1	OpenLayers.Marker
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSContext.js	1340830591	1	OpenLayers.Format.OWSContext
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities/v1.js	1340830591	1	OpenLayers.Format.WFSCapabilities.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/StyleMap.js	1340830591	1	OpenLayers.StyleMap
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XLS/v1_1_0.js	1340830591	1	OpenLayers.Format.XLS.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Console.js	1340830591	1	OpenLayers.Console
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Box.js	1340830591	1	OpenLayers.Handler.Box
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/OSM.js	1340830591	1	OpenLayers.Layer.OSM
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GeoRSS.js	1340830591	1	OpenLayers.Format.GeoRSS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/gsw.js	1340830591	1	OpenLayers.Lang["gsw"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/LinearRing.js	1340830591	1	OpenLayers.Geometry.LinearRing
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSGetObservation.js	1340830591	1	OpenLayers.Format.SOSGetObservation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Comparison.js	1340830591	1	OpenLayers.Filter.Comparison
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Spherical.js	1340830591	1	Spherical
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ar.js	1340830591	1	OpenLayers.Lang["ar"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Collection.js	1340830591	1	OpenLayers.Geometry.Collection
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WCSGetCoverage.js	1340830591	1	OpenLayers.Format.WCSGetCoverage version 1.1.0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter.js	1340830591	1	OpenLayers.Filter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PanPanel.js	1340830591	1	OpenLayers.Control.PanPanel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google.js	1340830591	1	OpenLayers.Layer.Google
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/KaMapCache.js	1340830591	1	OpenLayers.Layer.KaMapCache
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Polygon.js	1340830591	1	OpenLayers.Geometry.Polygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Split.js	1340830591	1	OpenLayers.Control.Split
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/JSON.js	1340830591	1	OpenLayers.Format.JSON
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Image.js	1340830591	1	OpenLayers.Layer.Image
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Click.js	1340830591	1	OpenLayers.Handler.Click
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Spatial.js	1340830591	1	OpenLayers.Filter.Spatial
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Pinch.js	1340830591	1	OpenLayers.Handler.Pinch
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Function.js	1340830591	1	OpenLayers.Filter.Function
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/FramedCloud.js	1340830591	1	OpenLayers.Popup.FramedCloud
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Kinetic.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Kinetic.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter/v1_0_0.js	1340830591	1	OpenLayers.Format.Filter.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomToMaxExtent.js	1340830591	1	OpenLayers.Control.ZoomToMaxExtent
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OSM.js	1340830591	1	OpenLayers.Format.OSM
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetRecords.js	1340830591	1	OpenLayers.Format.CSWGetRecords
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/EventPane.js	1340830591	1	OpenLayers.Layer.EventPane
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js	1340830591	1	OpenLayers.Format.WMSDescribeLayer.v1_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol/Script.js	1340830591	1	OpenLayers.Protocol.Script
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Zoom.js	1340830591	1	OpenLayers.Control.Zoom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Context.js	1340830591	1	OpenLayers.Format.Context
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Line.js	1340830591	1	OpenLayers.Symbolizer.Line
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/it.js	1340830591	1	OpenLayers.Lang["it"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/lt.js	1340830591	1	OpenLayers.Lang["lt"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/DragFeature.js	1340830591	1	OpenLayers.Control.DragFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML.js	1340830591	1	OpenLayers.Format.GML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSDescribeFeatureType.js	1340830591	1	OpenLayers.Format.WFSDescribeFeatureType
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google/v3.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Google/v3.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/zh-TW.js	1340830591	1	OpenLayers.Lang["zh-TW"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/OWSCommon/v1_0_0.js	1340830591	1	OpenLayers.Format.OWSCommon.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/hsb.js	1340830591	1	OpenLayers.Lang["hsb"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js	1340830591	1	OpenLayers.Format.WFSCapabilities/v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/WMSGetFeatureInfo.js	1340830591	1	OpenLayers.Control.WMSGetFeatureInfo
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Measure.js	1340830591	1	OpenLayers.Control.Measure
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/pl.js	1340830591	1	OpenLayers.Lang["pl"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CQL.js	1340830591	1	OpenLayers.Format.CQL
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Size.js	1340830591	1	OpenLayers.Size
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Text.js	1340830591	1	OpenLayers.Symbolizer.Text
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_1_1_WMSC
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js	1340830591	1	OpenLayers.Format.CSWGetRecords.v2_0_2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/hu.js	1340830591	1	OpenLayers.Lang["hu"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST/v1_0_0.js	1340830591	1	OpenLayers.Format.WFST.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/EditingToolbar.js	1340830591	1	OpenLayers.Control.EditingToolbar
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Hover.js	1340830591	1	OpenLayers.Handler.Hover
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/MultiPolygon.js	1340830591	1	OpenLayers.Geometry.MultiPolygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Text.js	1340830591	1	OpenLayers.Layer.Text
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/GeoRSS.js	1340830591	1	OpenLayers.Layer.GeoRSS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Request.js	1340830591	1	OpenLayers.Request
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ArgParser.js	1340830591	1	OpenLayers.Control.ArgParser
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Cluster.js	1340830591	1	OpenLayers.Strategy.Cluster
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/LineString.js	1340830591	1	OpenLayers.Geometry.LineString
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/en.js	1340830591	1	OpenLayers.Lang["en"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/el.js	1340830591	1	OpenLayers.Lang["el"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSDescribeLayer.js	1340830591	1	OpenLayers.Format.WMSDescribeLayer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Projection.js	1340830591	1	OpenLayers.Projection
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js	1340830591	1	OpenLayers.Format.CSWGetDomain.v2_0_2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Curve.js	1340830591	1	OpenLayers.Geometry.Curve
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Date.js	1340830591	1	OpenLayers.Date
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/RegularPolygon.js	1340830591	1	OpenLayers.Handler.RegularPolygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/ArcIMS.js	1340830591	1	OpenLayers.Layer.ArcIMS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/deprecated.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/deprecated.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/CacheRead.js	1340830591	1	OpenLayers.Control.CacheRead
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebugx.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebugx.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Markers.js	1340830591	1	OpenLayers.Layer.Markers
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WKT.js	1340830591	1	OpenLayers.Format.WKT
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/FeatureId.js	1340830591	1	OpenLayers.Filter.FeatureId
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/license.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/license.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/VML.js	1340830591	1	OpenLayers.Renderer.VML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Paging.js	1340830591	1	OpenLayers.Strategy.Paging
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/ZoomIn.js	1340830591	1	OpenLayers.Control.ZoomIn
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ksh.js	1340830591	1	OpenLayers.Lang["ksh"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GPX.js	1340830591	1	OpenLayers.Format.GPX
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Corner.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Corner.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler.js	1340830591	1	OpenLayers.Handler
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/pt-BR.js	1340830591	1	OpenLayers.Lang["pt-br"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/MapGuide.js	1340830591	1	OpenLayers.Layer.MapGuide
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Polygon.js	1340830591	1	OpenLayers.Symbolizer.Polygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XLS.js	1340830591	1	OpenLayers.Format.XLS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Feature.js	1340830591	1	OpenLayers.Handler.Feature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML/v3.js	1340830591	1	OpenLayers.Format.GML.v3
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/MouseWheel.js	1340830591	1	OpenLayers.Handler.MouseWheel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/te.js	1340830591	1	OpenLayers.Lang["te"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/br.js	1340830591	1	OpenLayers.Lang["br"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Filter.js	1340830591	1	OpenLayers.Strategy.Filter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Class.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Class.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_1_1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/be-tarask.js	1340830591	1	OpenLayers.Lang["be-tarask"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/Point.js	1340830591	1	OpenLayers.Geometry.Point
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Graticule.js	1340830591	1	OpenLayers.Control.Graticule
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/KeyboardDefaults.js	1340830591	1	OpenLayers.Control.KeyboardDefaults
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/ArcXML/Features.js	1340830591	1	OpenLayers.Format.ArcXML.Features
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer.js	1340830591	1	OpenLayers.Renderer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/fr.js	1340830591	1	OpenLayers.Lang["fr"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/ArcXML.js	1340830591	1	OpenLayers.Format.ArcXML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/is.js	1340830591	1	OpenLayers.Lang["is"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile.js	1340830591	1	OpenLayers.Tile
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/SingleFile.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/SingleFile.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XML/VersionedOGC.js	1340830591	1	OpenLayers.Format.XML.VersionedOGC
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/km.js	1340830591	1	OpenLayers.Lang["km"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Tile/UTFGrid.js	1340830591	1	OpenLayers.Tile.UTFGrid
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Point.js	1340830591	1	OpenLayers.Symbolizer.Point
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML/v2.js	1340830591	1	OpenLayers.Format.GML.v2
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/LonLat.js	1340830591	1	OpenLayers.LonLat
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/TouchNavigation.js	1340830591	1	OpenLayers.Control.TouchNavigation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/DrawFeature.js	1340830591	1	OpenLayers.Control.DrawFeature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Feature/Vector.js	1340830591	1	OpenLayers.Feature.Vector
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ia.js	1340830591	1	OpenLayers.Lang["ia"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XLS/v1.js	1340830591	1	OpenLayers.Format.XLS.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter.js	1340830591	1	OpenLayers.Format.Filter
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/CacheWrite.js	1340830591	1	OpenLayers.Control.CacheWrite
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC/v1.js	1340830591	1	OpenLayers.Format.WMC.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Polygon.js	1340830591	1	OpenLayers.Handler.Polygon
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Button.js	1340830591	1	OpenLayers.Control.Button
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js	1340830591	1	OpenLayers.Format.SOSGetFeatureOfInterest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Pixel.js	1340830591	1	OpenLayers.Pixel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/NavToolbar.js	1340830591	1	OpenLayers.Control.NavToolbar
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Filter/v1.js	1340830591	1	OpenLayers.Format.Filter.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/sv-SE.js	1340830591	1	OpenLayers.Lang["sv"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Drag.js	1340830591	1	OpenLayers.Handler.Drag
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Request/XMLHttpRequest.js	1340830591	1	OpenLayers.Request.XMLHttpRequest
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Color.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Rico/Color.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Strategy/Fixed.js	1340830591	1	OpenLayers.Strategy.Fixed
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/KML.js	1340830591	1	OpenLayers.Format.KML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Feature.js	1340830591	1	OpenLayers.Feature
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Util.js	1340830591	1	Util
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/Canvas.js	1340830591	1	OpenLayers.Renderer.Canvas
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PanZoomBar.js	1340830591	1	OpenLayers.Control.PanZoomBar
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebug.js	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/firebug.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSGetFeatureInfo.js	1340830591	1	OpenLayers.Format.WMSGetFeatureInfo
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/PinchZoom.js	1340830591	1	OpenLayers.Control.PinchZoom
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST.js	1340830591	1	/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST.js
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Rule.js	1340830591	1	OpenLayers.Rule
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC/v1_0_0.js	1340830591	1	OpenLayers.Format.WMC.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js	1340830591	1	OpenLayers.Format.WMSCapabilities/v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.WFSCapabilities/v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Popup/AnchoredBubble.js	1340830591	1	OpenLayers.Popup.AnchoredBubble
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMSCapabilities.js	1340830591	1	OpenLayers.Format.WMSCapabilities
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Bing.js	1340830591	1	OpenLayers.Layer.Bing
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer.js	1340830591	1	OpenLayers.Layer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Protocol.js	1340830591	1	OpenLayers.Protocol
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Filter/Logical.js	1340830591	1	OpenLayers.Filter.Logical
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/BaseTypes/Element.js	1340830591	1	OpenLayers.Element
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/WMS.js	1340830591	1	OpenLayers.Layer.WMS
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/sk.js	1340830591	1	OpenLayers.Lang["sk"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nb.js	1340830591	1	OpenLayers.Lang["nb"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js	1340830591	1	OpenLayers.Format.SOSCapabilities.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/WorldWind.js	1340830591	1	OpenLayers.Layer.WorldWind
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WMC/v1_1_0.js	1340830591	1	OpenLayers.Format.WMC.v1_1_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Geometry/MultiPoint.js	1340830591	1	OpenLayers.Geometry.MultiPoint
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Zoomify.js	1340830591	1	OpenLayers.Layer.Zoomify
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/Vector/RootContainer.js	1340830591	1	OpenLayers.Layer.Vector.RootContainer
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Handler/Point.js	1340830591	1	OpenLayers.Handler.Point
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/LayerSwitcher.js	1340830591	1	OpenLayers.Control.LayerSwitcher
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nds.js	1340830591	1	OpenLayers.Lang["nds"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/TileCache.js	1340830591	1	OpenLayers.Layer.TileCache
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Layer/XYZ.js	1340830591	1	OpenLayers.Layer.XYZ
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Animation.js	1340830591	1	OpenLayers.Animation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/GML/Base.js	1340830591	1	OpenLayers.Format.GML.Base
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/io.js	1340830591	1	OpenLayers.Lang["io"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/readme.txt	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/readme.txt
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Navigation.js	1340830591	1	OpenLayers.Control.Navigation
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/ja.js	1340830591	1	OpenLayers.Lang["ja"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/WMTSGetFeatureInfo.js	1340830591	1	OpenLayers.Control.WMTSGetFeatureInfo
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/Text.js	1340830591	1	OpenLayers.Format.Text
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/nn.js	1340830591	1	OpenLayers.Lang["nn"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Control/Panel.js	1340830591	1	OpenLayers.Control.Panel
-/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/license.txt	1340830591	0	/tmp/openlayers/tools/OpenLayers-2.12/lib/Firebug/license.txt
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WPSExecute.js	1340830591	1	OpenLayers.Format.WPSExecute version 1.0.0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/SLD/v1_0_0.js	1340830591	1	OpenLayers.Format.SLD.v1_0_0
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Renderer/SVG.js	1340830591	1	OpenLayers.Renderer.SVG
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/WFST/v1.js	1340830591	1	OpenLayers.Format.WFST.v1
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Format/XML.js	1340830591	1	OpenLayers.Format.XML
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Lang/fi.js	1340830591	1	OpenLayers.Lang["fi"]
-/tmp/openlayers/tools/OpenLayers-2.12/lib/OpenLayers/Symbolizer/Raster.js	1340830591	1	OpenLayers.Symbolizer.Raster
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/WMS.js	1371470639	1	OpenLayers.Layer.WMS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/license.txt	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/license.txt
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js	1371470639	1	OpenLayers.Format.WMSDescribeLayer.v1_1_1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSContext.js	1371470639	1	OpenLayers.Format.OWSContext
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XML.js	1371470639	1	OpenLayers.Format.XML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js	1371470639	1	OpenLayers.Format.WFSCapabilities/v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/km.js	1371470639	1	OpenLayers.Lang["km"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XLS.js	1371470639	1	OpenLayers.Format.XLS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/DrawFeature.js	1371470639	1	OpenLayers.Control.DrawFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC.js	1371470639	1	OpenLayers.Format.WMC
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML/v3.js	1371470639	1	OpenLayers.Format.GML.v3
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Vector/RootContainer.js	1371470639	1	OpenLayers.Layer.Vector.RootContainer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Markers.js	1371470639	1	OpenLayers.Layer.Markers
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer.js	1371470639	1	OpenLayers.Layer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS.js	1371470639	1	OpenLayers.Protocol.WFS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/DragPan.js	1371470639	1	OpenLayers.Control.DragPan
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Feature.js	1371470639	1	OpenLayers.Handler.Feature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WMTSCapabilities.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomPanel.js	1371470639	1	OpenLayers.Control.ZoomPanel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/fi.js	1371470639	1	OpenLayers.Lang["fi"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OSM.js	1371470639	1	OpenLayers.Format.OSM
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/WPSClient.js	1371470639	1	OpenLayers.WPSClient
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Button.js	1371470639	1	OpenLayers.Control.Button
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST/v1_0_0.js	1371470639	1	OpenLayers.Format.WFST.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/NavToolbar.js	1371470639	1	OpenLayers.Control.NavToolbar
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XML/VersionedOGC.js	1371470639	1	OpenLayers.Format.XML.VersionedOGC
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/LineString.js	1371470639	1	OpenLayers.Geometry.LineString
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter.js	1371470639	1	OpenLayers.Filter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_3.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_3
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/KaMap.js	1371470639	1	OpenLayers.Layer.KaMap
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/CacheRead.js	1371470639	1	OpenLayers.Control.CacheRead
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS/v1_0_0.js	1371470639	1	OpenLayers.Protocol.WFS.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Icon.js	1371470639	1	OpenLayers.Icon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/ArcXML.js	1371470639	1	OpenLayers.Format.ArcXML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/NavigationHistory.js	1371470639	1	OpenLayers.Control.NavigationHistory
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Point.js	1371470639	1	OpenLayers.Handler.Point
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/WMTS.js	1371470639	1	OpenLayers.Layer.WMTS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Filter.js	1371470639	1	OpenLayers.Strategy.Filter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSDescribeProcess.js	1371470639	1	OpenLayers.Format.WPSDescribeProcess
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Console.js	1371470639	1	OpenLayers.Console
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/es.js	1371470639	1	OpenLayers.Lang["es"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nb.js	1371470639	1	OpenLayers.Lang["nb"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Logical.js	1371470639	1	OpenLayers.Filter.Logical
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities/v1.js	1371470639	1	OpenLayers.Format.WFSCapabilities.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/br.js	1371470639	1	OpenLayers.Lang["br"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon/v1.js	1371470639	1	OpenLayers.Format.OWSCommon.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PanZoomBar.js	1371470639	1	OpenLayers.Control.PanZoomBar
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/LonLat.js	1371470639	1	OpenLayers.LonLat
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcIMS.js	1371470639	1	OpenLayers.Layer.ArcIMS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML/v2.js	1371470639	1	OpenLayers.Format.GML.v2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebug.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebug.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGIS93Rest.js	1371470639	1	OpenLayers.Layer.ArcGIS93Rest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/MultiLineString.js	1371470639	1	OpenLayers.Geometry.MultiLineString
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/UTFGrid.js	1371470639	1	OpenLayers.Tile.UTFGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Split.js	1371470639	1	OpenLayers.Control.Split
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/SingleFile.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/SingleFile.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Style2.js	1371470639	1	OpenLayers.Style2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler.js	1371470639	1	OpenLayers.Handler
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry.js	1371470639	1	OpenLayers.Geometry
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/sv-SE.js	1371470639	1	OpenLayers.Lang["sv"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Rule.js	1371470639	1	OpenLayers.Rule
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/fr.js	1371470639	1	OpenLayers.Lang["fr"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter/v1_0_0.js	1371470639	1	OpenLayers.Format.Filter.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/cs-CZ.js	1371470639	1	OpenLayers.Lang["cs-CZ"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Grid.js	1371470639	1	OpenLayers.Layer.Grid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google.js	1371470639	1	OpenLayers.Layer.Google
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/DragFeature.js	1371470639	1	OpenLayers.Control.DragFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Pinch.js	1371470639	1	OpenLayers.Handler.Pinch
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter/v1.js	1371470639	1	OpenLayers.Format.Filter.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format.js	1371470639	1	OpenLayers.Format
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/CacheWrite.js	1371470639	1	OpenLayers.Control.CacheWrite
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/TileCache.js	1371470639	1	OpenLayers.Layer.TileCache
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/SOS.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/SOS.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/it.js	1371470639	1	OpenLayers.Lang["it"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/GeoRSS.js	1371470639	1	OpenLayers.Layer.GeoRSS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities.js	1371470639	1	OpenLayers.Format.WMSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/BBOX.js	1371470639	1	OpenLayers.Strategy.BBOX
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/en-CA.js	1371470639	1	OpenLayers.Lang["en-CA"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon/v1_1_0.js	1371470639	1	OpenLayers.Format.OWSCommon.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Pan.js	1371470639	1	OpenLayers.Control.Pan
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Feature/Vector.js	1371470639	1	OpenLayers.Feature.Vector
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Zoom.js	1371470639	1	OpenLayers.Control.Zoom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Polygon.js	1371470639	1	OpenLayers.Symbolizer.Polygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSGetObservation.js	1371470639	1	OpenLayers.Format.SOSGetObservation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/EncodedPolyline.js	1371470639	1	OpenLayers.Format.EncodedPolyline
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSCapabilities.js	1371470639	1	OpenLayers.Format.SOSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/KML.js	1371470639	1	OpenLayers.Format.KML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GPX.js	1371470639	1	OpenLayers.Format.GPX
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ia.js	1371470639	1	OpenLayers.Lang["ia"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WFSCapabilities/v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/MultiPolygon.js	1371470639	1	OpenLayers.Geometry.MultiPolygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Attribution.js	1371470639	1	OpenLayers.Control.Attribution
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google/v3.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Google/v3.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/Canvas.js	1371470639	1	OpenLayers.Renderer.Canvas
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CQL.js	1371470639	1	OpenLayers.Format.CQL
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ro.js	1371470639	1	OpenLayers.Lang["ro"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGISCache.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/ArcGISCache.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD/v1_0_0.js	1371470639	1	OpenLayers.Format.SLD.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GeoJSON.js	1371470639	1	OpenLayers.Format.GeoJSON
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/CSW/v2_0_2.js	1371470639	1	OpenLayers.Protocol.CSW.v2_0_2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD/v1.js	1371470639	1	OpenLayers.Format.SLD.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_3_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Util/vendorPrefix.js	1371470639	1	OpenLayers.Util.vendorPrefix
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/JSON.js	1371470639	1	OpenLayers.Format.JSON
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST/v1_1_0.js	1371470639	1	OpenLayers.Format.WFST.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Refresh.js	1371470639	1	OpenLayers.Strategy.Refresh
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/WPSProcess.js	1371470639	1	OpenLayers.WPSProcess
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ca.js	1371470639	1	OpenLayers.Lang["ca"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/zh-TW.js	1371470639	1	OpenLayers.Lang["zh-TW"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/HTTPRequest.js	1371470639	1	OpenLayers.Layer.HTTPRequest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Function.js	1371470639	1	OpenLayers.Filter.Function
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSDescribeLayer.js	1371470639	1	OpenLayers.Format.WMSDescribeLayer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WKT.js	1371470639	1	OpenLayers.Format.WKT
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFS.js	1371470639	1	OpenLayers.Format.WFS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/be-tarask.js	1371470639	1	OpenLayers.Lang["be-tarask"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/zh-CN.js	1371470639	1	OpenLayers.Lang["zh-CN"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Events.js	1371470639	1	OpenLayers.Event
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Raster.js	1371470639	1	OpenLayers.Symbolizer.Raster
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/SphericalMercator.js	1371470639	1	OpenLayers.Layer.SphericalMercator
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Boxes.js	1371470639	1	OpenLayers.Layer.Boxes
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/LinearRing.js	1371470639	1	OpenLayers.Geometry.LinearRing
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMTSCapabilities.js	1371470639	1	OpenLayers.Format.WMTSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomBox.js	1371470639	1	OpenLayers.Control.ZoomBox
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Map.js	1371470639	1	OpenLayers.Map
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/PointGrid.js	1371470639	1	OpenLayers.Layer.PointGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/PointTrack.js	1371470639	1	OpenLayers.Layer.PointTrack
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Request/XMLHttpRequest.js	1371470639	1	OpenLayers.Request.XMLHttpRequest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Drag.js	1371470639	1	OpenLayers.Handler.Drag
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/MultiPoint.js	1371470639	1	OpenLayers.Geometry.MultiPoint
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/hsb.js	1371470639	1	OpenLayers.Lang["hsb"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ja.js	1371470639	1	OpenLayers.Lang["ja"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Feature.js	1371470639	1	OpenLayers.Feature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/gsw.js	1371470639	1	OpenLayers.Lang["gsw"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Bounds.js	1371470639	1	OpenLayers.Bounds
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js	1371470639	1	OpenLayers.Format.SLD/v1_0_0_GeoServer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/Elements.js	1371470639	1	OpenLayers.ElementsIndexer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/SOS/v1_0_0.js	1371470639	1	OpenLayers.Protocol.SOS.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities/v1.js	1371470639	1	OpenLayers.Format.WCSCapabilities.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC/v1_1_0.js	1371470639	1	OpenLayers.Format.WMC.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML.js	1371470639	1	OpenLayers.Format.GML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSGetFeatureInfo.js	1371470639	1	OpenLayers.Format.WMSGetFeatureInfo
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WPSCapabilities.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Request.js	1371470639	1	OpenLayers.Request
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomToMaxExtent.js	1371470639	1	OpenLayers.Control.ZoomToMaxExtent
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Box.js	1371470639	1	OpenLayers.Handler.Box
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Path.js	1371470639	1	OpenLayers.Handler.Path
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SLD.js	1371470639	1	OpenLayers.Format.SLD
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Point.js	1371470639	1	OpenLayers.Symbolizer.Point
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter.js	1371470639	1	OpenLayers.Format.Filter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_1_1_WMSC
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Marker.js	1371470639	1	OpenLayers.Marker
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ModifyFeature.js	1371470639	1	OpenLayers.Control.ModifyFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/io.js	1371470639	1	OpenLayers.Lang["io"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/EventPane.js	1371470639	1	OpenLayers.Layer.EventPane
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSContext/v0_3_1.js	1371470639	1	OpenLayers.Format.OWSContext.v0_3_1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomIn.js	1371470639	1	OpenLayers.Control.ZoomIn
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nl.js	1371470639	1	OpenLayers.Lang["nl"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/hu.js	1371470639	1	OpenLayers.Lang["hu"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Corner.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Corner.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSExecute.js	1371470639	1	OpenLayers.Format.WPSExecute version 1.0.0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Zoomify.js	1371470639	1	OpenLayers.Layer.Zoomify
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/MousePosition.js	1371470639	1	OpenLayers.Control.MousePosition
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang.js	1371470639	1	OpenLayers.Lang
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ArgParser.js	1371470639	1	OpenLayers.Control.ArgParser
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/lt.js	1371470639	1	OpenLayers.Lang["lt"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Color.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/Color.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GeoRSS.js	1371470639	1	OpenLayers.Format.GeoRSS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Spatial.js	1371470639	1	OpenLayers.Filter.Spatial
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/fur.js	1371470639	1	OpenLayers.Lang["fur"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Class.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Class.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/TransformFeature.js	1371470639	1	OpenLayers.Control.TransformFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ru.js	1371470639	1	OpenLayers.Lang["ru"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/HTTP.js	1371470639	1	OpenLayers.Protocol.HTTP
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Panel.js	1371470639	1	OpenLayers.Control.Panel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFST/v1.js	1371470639	1	OpenLayers.Format.WFST.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Cluster.js	1371470639	1	OpenLayers.Strategy.Cluster
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/TMS.js	1371470639	1	OpenLayers.Layer.TMS
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ksh.js	1371470639	1	OpenLayers.Lang["ksh"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Line.js	1371470639	1	OpenLayers.Symbolizer.Line
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PinchZoom.js	1371470639	1	OpenLayers.Control.PinchZoom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1.js	1371470639	1	OpenLayers.Format.WMSCapabilities.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/RegularPolygon.js	1371470639	1	OpenLayers.Handler.RegularPolygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Hover.js	1371470639	1	OpenLayers.Handler.Hover
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nn.js	1371470639	1	OpenLayers.Lang["nn"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/OSM.js	1371470639	1	OpenLayers.Layer.OSM
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Vector.js	1371470639	1	OpenLayers.Layer.Vector
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/WorldWind.js	1371470639	1	OpenLayers.Layer.WorldWind
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Polygon.js	1371470639	1	OpenLayers.Handler.Polygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/is.js	1371470639	1	OpenLayers.Lang["is"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Bing.js	1371470639	1	OpenLayers.Layer.Bing
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/de.js	1371470639	1	OpenLayers.Lang["de"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Point.js	1371470639	1	OpenLayers.Geometry.Point
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon/v1_0_0.js	1371470639	1	OpenLayers.Format.OWSCommon.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/SLDSelect.js	1371470639	1	OpenLayers.Control.SLDSelect
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/XYZ.js	1371470639	1	OpenLayers.Layer.XYZ
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/el.js	1371470639	1	OpenLayers.Lang["el"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC/v1.js	1371470639	1	OpenLayers.Format.WMC.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Save.js	1371470639	1	OpenLayers.Strategy.Save
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Kinetic.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Kinetic.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetRecords.js	1371470639	1	OpenLayers.Format.CSWGetRecords
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XLS/v1_1_0.js	1371470639	1	OpenLayers.Format.XLS.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer/Text.js	1371470639	1	OpenLayers.Symbolizer.Text
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSCapabilities.js	1371470639	1	OpenLayers.Format.WFSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/oc.js	1371470639	1	OpenLayers.Lang["oc"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/KaMapCache.js	1371470639	1	OpenLayers.Layer.KaMapCache
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup/Framed.js	1371470639	1	OpenLayers.Popup.Framed
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/id.js	1371470639	1	OpenLayers.Lang["id"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Measure.js	1371470639	1	OpenLayers.Control.Measure
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Fixed.js	1371470639	1	OpenLayers.Strategy.Fixed
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Symbolizer.js	1371470639	1	OpenLayers.Symbolizer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control.js	1371470639	1	OpenLayers.Control
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/hr.js	1371470639	1	OpenLayers.Lang["hr"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/EditingToolbar.js	1371470639	1	OpenLayers.Control.EditingToolbar
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Curve.js	1371470639	1	OpenLayers.Geometry.Curve
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers.js	1371470639	1	OpenLayers
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile.js	1371470639	1	OpenLayers.Tile
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Graticule.js	1371470639	1	OpenLayers.Control.Graticule
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/FeatureId.js	1371470639	1	OpenLayers.Filter.FeatureId
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/license.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Rico/license.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/CSW.js	1371470639	1	OpenLayers.Protocol.CSW
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OGCExceptionReport.js	1371470639	1	OpenLayers.Format.OGCExceptionReport
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/ar.js	1371470639	1	OpenLayers.Lang["ar"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/SelectFeature.js	1371470639	1	OpenLayers.Control.SelectFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Click.js	1371470639	1	OpenLayers.Handler.Click
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Filter/v1_1_0.js	1371470639	1	OpenLayers.Format.Filter.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/MapGuide.js	1371470639	1	OpenLayers.Layer.MapGuide
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ZoomOut.js	1371470639	1	OpenLayers.Control.ZoomOut
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS/v1_1_0.js	1371470639	1	OpenLayers.Protocol.WFS.v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/da-DK.js	1371470639	1	OpenLayers.Lang["da-DK"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Context.js	1371470639	1	OpenLayers.Format.Context
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol.js	1371470639	1	OpenLayers.Protocol
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/Script.js	1371470639	1	OpenLayers.Protocol.Script
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetDomain.js	1371470639	1	OpenLayers.Format.CSWGetDomain
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/ScaleLine.js	1371470639	1	OpenLayers.Control.ScaleLine
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup/FramedCloud.js	1371470639	1	OpenLayers.Popup.FramedCloud
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/Image.js	1371470639	1	OpenLayers.Tile.Image
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/nds.js	1371470639	1	OpenLayers.Lang["nds"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/SVG.js	1371470639	1	OpenLayers.Renderer.SVG
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Util.js	1371470639	1	Util
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js	1371470639	1	OpenLayers.Format.WMSCapabilities/v1_1_1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/XLS/v1.js	1371470639	1	OpenLayers.Format.XLS.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js	1371470639	1	OpenLayers.Format.CSWGetDomain.v2_0_2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/OWSCommon.js	1371470639	1	OpenLayers.Format.OWSCommon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/GML/Base.js	1371470639	1	OpenLayers.Format.GML.Base
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Atom.js	1371470639	1	OpenLayers.Format.Atom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities.js	1371470639	1	OpenLayers.Format.WCSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy.js	1371470639	1	OpenLayers.Strategy
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/QueryStringFilter.js	1371470639	1	OpenLayers.Format.QueryStringFilter
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/bg.js	1371470639	1	OpenLayers.Lang["bg"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/OverviewMap.js	1371470639	1	OpenLayers.Control.OverviewMap
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WPSCapabilities.js	1371470639	1	OpenLayers.Format.WPSCapabilities
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebugx.js	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/firebugx.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Filter/Comparison.js	1371470639	1	OpenLayers.Filter.Comparison
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js	1371470639	1	OpenLayers.Format.WCSCapabilities/v1_1_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup/Anchored.js	1371470639	1	OpenLayers.Popup.Anchored
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Scale.js	1371470639	1	OpenLayers.Control.Scale
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js	1371470639	1	OpenLayers.Format.SOSGetFeatureOfInterest
+/tmp/openlayers/tools/OpenLayers-2.13/lib/deprecated.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/deprecated.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.WCSCapabilities/v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/ArcXML/Features.js	1371470639	1	OpenLayers.Format.ArcXML.Features
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tween.js	1371470639	1	OpenLayers.Tween
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WFSDescribeFeatureType.js	1371470639	1	OpenLayers.Format.WFSDescribeFeatureType
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Marker/Box.js	1371470639	1	OpenLayers.Marker.Box
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/pt-BR.js	1371470639	1	OpenLayers.Lang["pt-br"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/KeyboardDefaults.js	1371470639	1	OpenLayers.Control.KeyboardDefaults
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/en.js	1371470639	1	OpenLayers.Lang["en"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Style.js	1371470639	1	OpenLayers.Style
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Date.js	1371470639	1	OpenLayers.Date
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Strategy/Paging.js	1371470639	1	OpenLayers.Strategy.Paging
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/GetFeature.js	1371470639	1	OpenLayers.Control.GetFeature
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/UTFGrid.js	1371470639	1	OpenLayers.Control.UTFGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/MapServer.js	1371470639	1	OpenLayers.Layer.MapServer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/sk.js	1371470639	1	OpenLayers.Lang["sk"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Projection.js	1371470639	1	OpenLayers.Projection
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Polygon.js	1371470639	1	OpenLayers.Geometry.Polygon
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/pt.js	1371470639	1	OpenLayers.Lang["pt"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/StyleMap.js	1371470639	1	OpenLayers.StyleMap
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Events/featureclick.js	1371470639	1	OpenLayers.Events.featureclick
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Text.js	1371470639	1	OpenLayers.Layer.Text
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/Image.js	1371470639	1	OpenLayers.Layer.Image
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WCSGetCoverage.js	1371470639	1	OpenLayers.Format.WCSGetCoverage version 1.1.0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/Keyboard.js	1371470639	1	OpenLayers.handler.Keyboard
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PanPanel.js	1371470639	1	OpenLayers.Control.PanPanel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js	1371470639	1	OpenLayers.Format.SOSCapabilities.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/vi.js	1371470639	1	OpenLayers.Lang["vi"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Events/buttonclick.js	1371470639	1	OpenLayers.Events.buttonclick
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/PanZoom.js	1371470639	1	OpenLayers.Control.PanZoom
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/WMTSGetFeatureInfo.js	1371470639	1	OpenLayers.Control.WMTSGetFeatureInfo
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Snapping.js	1371470639	1	OpenLayers.Control.Snapping
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/gl.js	1371470639	1	OpenLayers.Lang["gl"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Popup.js	1371470639	1	OpenLayers.Popup
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Navigation.js	1371470639	1	OpenLayers.Control.Navigation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Size.js	1371470639	1	OpenLayers.Size
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/TouchNavigation.js	1371470639	1	OpenLayers.Control.TouchNavigation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js	1371470639	1	OpenLayers.Format.CSWGetRecords.v2_0_2
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/LayerSwitcher.js	1371470639	1	OpenLayers.Control.LayerSwitcher
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/WMSGetFeatureInfo.js	1371470639	1	OpenLayers.Control.WMSGetFeatureInfo
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Geolocate.js	1371470639	1	OpenLayers.Control.Geolocate
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Spherical.js	1371470639	1	Spherical
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Handler/MouseWheel.js	1371470639	1	OpenLayers.Handler.MouseWheel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/UTFGrid.js	1371470639	1	OpenLayers.Layer.UTFGrid
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Protocol/WFS/v1.js	1371470639	1	OpenLayers.Protocol.WFS.v1
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Element.js	1371470639	1	OpenLayers.Element
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/Text.js	1371470639	1	OpenLayers.Format.Text
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/te.js	1371470639	1	OpenLayers.Lang["te"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/Image/IFrame.js	1371470639	1	/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Tile/Image/IFrame.js
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Lang/pl.js	1371470639	1	OpenLayers.Lang["pl"]
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Animation.js	1371470639	1	OpenLayers.Animation
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Geometry/Collection.js	1371470639	1	OpenLayers.Geometry.Collection
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer/VML.js	1371470639	1	OpenLayers.Renderer.VML
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes.js	1371470639	1	OpenLayers Base Types
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Control/Permalink.js	1371470639	1	OpenLayers.Control.Permalink
+/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/readme.txt	1371470639	0	/tmp/openlayers/tools/OpenLayers-2.13/lib/Firebug/readme.txt
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/TileManager.js	1371470639	1	OpenLayers.TileManager
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Layer/FixedZoomLevels.js	1371470639	1	OpenLayers.Layer.FixedZoomLevels
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMC/v1_0_0.js	1371470639	1	OpenLayers.Format.WMC.v1_0_0
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Renderer.js	1371470639	1	OpenLayers.Renderer
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/BaseTypes/Pixel.js	1371470639	1	OpenLayers.Pixel
+/tmp/openlayers/tools/OpenLayers-2.13/lib/OpenLayers/Format/WMSCapabilities/v1_1.js	1371470639	1	OpenLayers.Format.WMSCapabilities.v1_1
diff --git a/doc_config/Data/ImageFileInfo.nd b/doc_config/Data/ImageFileInfo.nd
index 3db5561..0543a16 100644
Binary files a/doc_config/Data/ImageFileInfo.nd and b/doc_config/Data/ImageFileInfo.nd differ
diff --git a/doc_config/Data/ImageReferenceTable.nd b/doc_config/Data/ImageReferenceTable.nd
index 7fce56c..0155f0d 100644
Binary files a/doc_config/Data/ImageReferenceTable.nd and b/doc_config/Data/ImageReferenceTable.nd differ
diff --git a/doc_config/Data/IndexInfo.nd b/doc_config/Data/IndexInfo.nd
index 23bbd8d..6e150c9 100644
Binary files a/doc_config/Data/IndexInfo.nd and b/doc_config/Data/IndexInfo.nd differ
diff --git a/doc_config/Data/PreviousMenuState.nd b/doc_config/Data/PreviousMenuState.nd
index 02f7ff0..7b0ee10 100644
Binary files a/doc_config/Data/PreviousMenuState.nd and b/doc_config/Data/PreviousMenuState.nd differ
diff --git a/doc_config/Data/PreviousSettings.nd b/doc_config/Data/PreviousSettings.nd
index 36cccaa..1343a6d 100644
Binary files a/doc_config/Data/PreviousSettings.nd and b/doc_config/Data/PreviousSettings.nd differ
diff --git a/doc_config/Data/SymbolTable.nd b/doc_config/Data/SymbolTable.nd
index e3e51a4..0b5d8dc 100644
Binary files a/doc_config/Data/SymbolTable.nd and b/doc_config/Data/SymbolTable.nd differ
diff --git a/doc_config/Languages.txt b/doc_config/Languages.txt
index 42b197c..85d5fde 100644
--- a/doc_config/Languages.txt
+++ b/doc_config/Languages.txt
@@ -1,4 +1,4 @@
-Format: 1.52
+Format: 1.51
 
 # This is the Natural Docs languages file for this project.  If you change
 # anything here, it will apply to THIS PROJECT ONLY.  If you'd like to change
diff --git a/doc_config/Menu.txt b/doc_config/Menu.txt
index 5bb3aaa..6f19572 100644
--- a/doc_config/Menu.txt
+++ b/doc_config/Menu.txt
@@ -1,4 +1,4 @@
-Format: 1.52
+Format: 1.51
 
 
 Title: OpenLayers
@@ -135,15 +135,6 @@ Group: OpenLayers  {
    Group: Format  {
 
       File: Format  (no auto-title, OpenLayers/Format.js)
-      File: ArcXML  (no auto-title, OpenLayers/Format/ArcXML.js)
-      File: ArcXML.Features  (no auto-title, OpenLayers/Format/ArcXML/Features.js)
-      File: Atom  (no auto-title, OpenLayers/Format/Atom.js)
-      File: Context  (no auto-title, OpenLayers/Format/Context.js)
-      File: CQL  (no auto-title, OpenLayers/Format/CQL.js)
-      File: CSWGetDomain  (no auto-title, OpenLayers/Format/CSWGetDomain.js)
-      File: CSWGetDomain.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetDomain/v2_0_2.js)
-      File: CSWGetRecords  (no auto-title, OpenLayers/Format/CSWGetRecords.js)
-      File: CSWGetRecords.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetRecords/v2_0_2.js)
 
       Group: Filter  {
 
@@ -169,14 +160,6 @@ Group: OpenLayers  {
          File: v1_0_0  (no auto-title, OpenLayers/Format/SLD/v1_0_0.js)
          }  # Group: SLD
 
-      File: GeoJSON  (no auto-title, OpenLayers/Format/GeoJSON.js)
-      File: GeoRSS  (no auto-title, OpenLayers/Format/GeoRSS.js)
-      File: GPX  (no auto-title, OpenLayers/Format/GPX.js)
-      File: JSON  (no auto-title, OpenLayers/Format/JSON.js)
-      File: KML  (no auto-title, OpenLayers/Format/KML.js)
-      File: OGCExceptionReport  (no auto-title, OpenLayers/Format/OGCExceptionReport.js)
-      File: OSM  (no auto-title, OpenLayers/Format/OSM.js)
-
       Group: OWSCommon  {
 
          File: OWSCommon  (no auto-title, OpenLayers/Format/OWSCommon.js)
@@ -185,18 +168,6 @@ Group: OpenLayers  {
          File: v1_1_0  (no auto-title, OpenLayers/Format/OWSCommon/v1_1_0.js)
          }  # Group: OWSCommon
 
-      File: OWSContext  (no auto-title, OpenLayers/Format/OWSContext.js)
-      File: OWSContext.v0_3_1  (no auto-title, OpenLayers/Format/OWSContext/v0_3_1.js)
-      File: QueryStringFilter  (no auto-title, OpenLayers/Format/QueryStringFilter.js)
-      File: SOSCapabilities  (no auto-title, OpenLayers/Format/SOSCapabilities.js)
-      File: SOSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/SOSCapabilities/v1_0_0.js)
-      File: SOSGetFeatureOfInterest  (no auto-title, OpenLayers/Format/SOSGetFeatureOfInterest.js)
-      File: SOSGetObservation  (no auto-title, OpenLayers/Format/SOSGetObservation.js)
-      File: Text  (no auto-title, OpenLayers/Format/Text.js)
-      File: VersionedOGC  (OpenLayers/Format/XML/VersionedOGC.js)
-      File: WCSGetCoverage version 1.1.0  (no auto-title, OpenLayers/Format/WCSGetCoverage.js)
-      File: WFS  (no auto-title, OpenLayers/Format/WFS.js)
-
       Group: WFSCapabilities  {
 
          File: WFSCapabilities  (no auto-title, OpenLayers/Format/WFSCapabilities.js)
@@ -239,19 +210,60 @@ Group: OpenLayers  {
          File: v1_1  (no auto-title, OpenLayers/Format/WMSDescribeLayer/v1_1.js)
          }  # Group: WMSDescribeLayer
 
-      File: WFSDescribeFeatureType  (no auto-title, OpenLayers/Format/WFSDescribeFeatureType.js)
-      File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
-      File: WMSGetFeatureInfo  (no auto-title, OpenLayers/Format/WMSGetFeatureInfo.js)
-      File: WMTSCapabilities  (no auto-title, OpenLayers/Format/WMTSCapabilities.js)
-      File: WMTSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WMTSCapabilities/v1_0_0.js)
-      File: WPSCapabilities  (no auto-title, OpenLayers/Format/WPSCapabilities.js)
-      File: WPSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WPSCapabilities/v1_0_0.js)
-      File: WPSDescribeProcess  (no auto-title, OpenLayers/Format/WPSDescribeProcess.js)
-      File: WPSExecute version 1.0.0  (no auto-title, OpenLayers/Format/WPSExecute.js)
-      File: XLS  (no auto-title, OpenLayers/Format/XLS.js)
-      File: XLS.v1  (no auto-title, OpenLayers/Format/XLS/v1.js)
-      File: XLS.v1_1_0  (no auto-title, OpenLayers/Format/XLS/v1_1_0.js)
-      File: XML  (no auto-title, OpenLayers/Format/XML.js)
+      Group: Format  {
+
+         File: ArcXML  (no auto-title, OpenLayers/Format/ArcXML.js)
+         File: ArcXML.Features  (no auto-title, OpenLayers/Format/ArcXML/Features.js)
+         File: Atom  (no auto-title, OpenLayers/Format/Atom.js)
+         File: Context  (no auto-title, OpenLayers/Format/Context.js)
+         File: CQL  (no auto-title, OpenLayers/Format/CQL.js)
+         File: CSWGetDomain  (no auto-title, OpenLayers/Format/CSWGetDomain.js)
+         File: CSWGetDomain.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetDomain/v2_0_2.js)
+         File: CSWGetRecords  (no auto-title, OpenLayers/Format/CSWGetRecords.js)
+         File: CSWGetRecords.v2_0_2  (no auto-title, OpenLayers/Format/CSWGetRecords/v2_0_2.js)
+         File: EncodedPolyline  (OpenLayers/Format/EncodedPolyline.js)
+         File: GeoJSON  (no auto-title, OpenLayers/Format/GeoJSON.js)
+         File: GeoRSS  (no auto-title, OpenLayers/Format/GeoRSS.js)
+         File: GPX  (no auto-title, OpenLayers/Format/GPX.js)
+         File: JSON  (no auto-title, OpenLayers/Format/JSON.js)
+         File: KML  (no auto-title, OpenLayers/Format/KML.js)
+         File: OGCExceptionReport  (no auto-title, OpenLayers/Format/OGCExceptionReport.js)
+         File: OSM  (no auto-title, OpenLayers/Format/OSM.js)
+         File: OWSContext  (no auto-title, OpenLayers/Format/OWSContext.js)
+         File: OWSContext.v0_3_1  (no auto-title, OpenLayers/Format/OWSContext/v0_3_1.js)
+         File: QueryStringFilter  (no auto-title, OpenLayers/Format/QueryStringFilter.js)
+         File: SOSCapabilities  (no auto-title, OpenLayers/Format/SOSCapabilities.js)
+         File: SOSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/SOSCapabilities/v1_0_0.js)
+         File: SOSGetFeatureOfInterest  (no auto-title, OpenLayers/Format/SOSGetFeatureOfInterest.js)
+         File: SOSGetObservation  (no auto-title, OpenLayers/Format/SOSGetObservation.js)
+         File: Text  (no auto-title, OpenLayers/Format/Text.js)
+         File: WCSCapabilities  (OpenLayers/Format/WCSCapabilities.js)
+
+         Group: WCSCapabilities  {
+
+            File: WCSCapabilities.v1  (OpenLayers/Format/WCSCapabilities/v1.js)
+            File: WCSCapabilities/v1_0_0  (OpenLayers/Format/WCSCapabilities/v1_0_0.js)
+            File: WCSCapabilities/v1_1_0  (OpenLayers/Format/WCSCapabilities/v1_1_0.js)
+            }  # Group: WCSCapabilities
+
+         File: WCSGetCoverage version 1.1.0  (no auto-title, OpenLayers/Format/WCSGetCoverage.js)
+         File: WFS  (no auto-title, OpenLayers/Format/WFS.js)
+         File: WFSDescribeFeatureType  (no auto-title, OpenLayers/Format/WFSDescribeFeatureType.js)
+         File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
+         File: WMSGetFeatureInfo  (no auto-title, OpenLayers/Format/WMSGetFeatureInfo.js)
+         File: WMTSCapabilities  (no auto-title, OpenLayers/Format/WMTSCapabilities.js)
+         File: WMTSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WMTSCapabilities/v1_0_0.js)
+         File: WPSCapabilities  (no auto-title, OpenLayers/Format/WPSCapabilities.js)
+         File: WPSCapabilities.v1_0_0  (no auto-title, OpenLayers/Format/WPSCapabilities/v1_0_0.js)
+         File: WPSDescribeProcess  (no auto-title, OpenLayers/Format/WPSDescribeProcess.js)
+         File: WPSExecute version 1.0.0  (no auto-title, OpenLayers/Format/WPSExecute.js)
+         File: XLS  (no auto-title, OpenLayers/Format/XLS.js)
+         File: XLS.v1  (no auto-title, OpenLayers/Format/XLS/v1.js)
+         File: XLS.v1_1_0  (no auto-title, OpenLayers/Format/XLS/v1_1_0.js)
+         File: XML  (no auto-title, OpenLayers/Format/XML.js)
+         File: XML.VersionedOGC  (OpenLayers/Format/XML/VersionedOGC.js)
+         }  # Group: Format
+
       }  # Group: Format
 
    Group: Geometry  {
@@ -288,50 +300,56 @@ Group: OpenLayers  {
    Group: Lang  {
 
       File: Lang  (no auto-title, OpenLayers/Lang.js)
-      File: ar  (no auto-title, OpenLayers/Lang/ar.js)
-      File: be-tarask  (no auto-title, OpenLayers/Lang/be-tarask.js)
-      File: bg  (no auto-title, OpenLayers/Lang/bg.js)
-      File: br  (no auto-title, OpenLayers/Lang/br.js)
-      File: ca  (no auto-title, OpenLayers/Lang/ca.js)
-      File: cs-CZ  (no auto-title, OpenLayers/Lang/cs-CZ.js)
-      File: da-DK  (no auto-title, OpenLayers/Lang/da-DK.js)
-      File: de  (no auto-title, OpenLayers/Lang/de.js)
-      File: en  (no auto-title, OpenLayers/Lang/en.js)
-      File: en-CA  (no auto-title, OpenLayers/Lang/en-CA.js)
-      File: es  (no auto-title, OpenLayers/Lang/es.js)
-      File: el  (no auto-title, OpenLayers/Lang/el.js)
-      File: fi  (no auto-title, OpenLayers/Lang/fi.js)
-      File: fr  (no auto-title, OpenLayers/Lang/fr.js)
-      File: fur  (no auto-title, OpenLayers/Lang/fur.js)
-      File: gl  (no auto-title, OpenLayers/Lang/gl.js)
-      File: gsw  (no auto-title, OpenLayers/Lang/gsw.js)
-      File: hr  (no auto-title, OpenLayers/Lang/hr.js)
-      File: hsb  (no auto-title, OpenLayers/Lang/hsb.js)
-      File: hu  (no auto-title, OpenLayers/Lang/hu.js)
-      File: ia  (no auto-title, OpenLayers/Lang/ia.js)
-      File: id  (no auto-title, OpenLayers/Lang/id.js)
-      File: io  (no auto-title, OpenLayers/Lang/io.js)
-      File: is  (no auto-title, OpenLayers/Lang/is.js)
-      File: it  (no auto-title, OpenLayers/Lang/it.js)
-      File: ja  (no auto-title, OpenLayers/Lang/ja.js)
-      File: km  (no auto-title, OpenLayers/Lang/km.js)
-      File: ksh  (no auto-title, OpenLayers/Lang/ksh.js)
-      File: lt  (no auto-title, OpenLayers/Lang/lt.js)
-      File: nds  (no auto-title, OpenLayers/Lang/nds.js)
-      File: nb  (no auto-title, OpenLayers/Lang/nb.js)
-      File: nl  (no auto-title, OpenLayers/Lang/nl.js)
-      File: nn  (no auto-title, OpenLayers/Lang/nn.js)
-      File: oc  (no auto-title, OpenLayers/Lang/oc.js)
-      File: pl  (no auto-title, OpenLayers/Lang/pl.js)
-      File: pt  (no auto-title, OpenLayers/Lang/pt.js)
-      File: pt-BR  (no auto-title, OpenLayers/Lang/pt-BR.js)
-      File: ru  (no auto-title, OpenLayers/Lang/ru.js)
-      File: sk  (no auto-title, OpenLayers/Lang/sk.js)
-      File: sv-SE  (no auto-title, OpenLayers/Lang/sv-SE.js)
-      File: te  (no auto-title, OpenLayers/Lang/te.js)
-      File: vi  (no auto-title, OpenLayers/Lang/vi.js)
-      File: zh-CN  (no auto-title, OpenLayers/Lang/zh-CN.js)
-      File: zh-TW  (no auto-title, OpenLayers/Lang/zh-TW.js)
+
+      Group: Lang  {
+
+         File: ar  (no auto-title, OpenLayers/Lang/ar.js)
+         File: be-tarask  (no auto-title, OpenLayers/Lang/be-tarask.js)
+         File: bg  (no auto-title, OpenLayers/Lang/bg.js)
+         File: br  (no auto-title, OpenLayers/Lang/br.js)
+         File: ca  (no auto-title, OpenLayers/Lang/ca.js)
+         File: cs-CZ  (no auto-title, OpenLayers/Lang/cs-CZ.js)
+         File: da-DK  (no auto-title, OpenLayers/Lang/da-DK.js)
+         File: de  (no auto-title, OpenLayers/Lang/de.js)
+         File: en  (no auto-title, OpenLayers/Lang/en.js)
+         File: en-CA  (no auto-title, OpenLayers/Lang/en-CA.js)
+         File: es  (no auto-title, OpenLayers/Lang/es.js)
+         File: el  (no auto-title, OpenLayers/Lang/el.js)
+         File: fi  (no auto-title, OpenLayers/Lang/fi.js)
+         File: fr  (no auto-title, OpenLayers/Lang/fr.js)
+         File: fur  (no auto-title, OpenLayers/Lang/fur.js)
+         File: gl  (no auto-title, OpenLayers/Lang/gl.js)
+         File: gsw  (no auto-title, OpenLayers/Lang/gsw.js)
+         File: hr  (no auto-title, OpenLayers/Lang/hr.js)
+         File: hsb  (no auto-title, OpenLayers/Lang/hsb.js)
+         File: hu  (no auto-title, OpenLayers/Lang/hu.js)
+         File: ia  (no auto-title, OpenLayers/Lang/ia.js)
+         File: id  (no auto-title, OpenLayers/Lang/id.js)
+         File: io  (no auto-title, OpenLayers/Lang/io.js)
+         File: is  (no auto-title, OpenLayers/Lang/is.js)
+         File: it  (no auto-title, OpenLayers/Lang/it.js)
+         File: ja  (no auto-title, OpenLayers/Lang/ja.js)
+         File: km  (no auto-title, OpenLayers/Lang/km.js)
+         File: ksh  (no auto-title, OpenLayers/Lang/ksh.js)
+         File: lt  (no auto-title, OpenLayers/Lang/lt.js)
+         File: nds  (no auto-title, OpenLayers/Lang/nds.js)
+         File: nb  (no auto-title, OpenLayers/Lang/nb.js)
+         File: nl  (no auto-title, OpenLayers/Lang/nl.js)
+         File: nn  (no auto-title, OpenLayers/Lang/nn.js)
+         File: oc  (no auto-title, OpenLayers/Lang/oc.js)
+         File: pl  (no auto-title, OpenLayers/Lang/pl.js)
+         File: pt  (no auto-title, OpenLayers/Lang/pt.js)
+         File: pt-BR  (no auto-title, OpenLayers/Lang/pt-BR.js)
+         File: ru  (no auto-title, OpenLayers/Lang/ru.js)
+         File: sk  (no auto-title, OpenLayers/Lang/sk.js)
+         File: sv-SE  (no auto-title, OpenLayers/Lang/sv-SE.js)
+         File: te  (no auto-title, OpenLayers/Lang/te.js)
+         File: vi  (no auto-title, OpenLayers/Lang/vi.js)
+         File: zh-CN  (no auto-title, OpenLayers/Lang/zh-CN.js)
+         File: zh-TW  (no auto-title, OpenLayers/Lang/zh-TW.js)
+         File: Lang["ro"]  (OpenLayers/Lang/ro.js)
+         }  # Group: Lang
+
       }  # Group: Lang
 
    Group: Layer  {
@@ -387,7 +405,6 @@ Group: OpenLayers  {
 
       File: Popup  (no auto-title, OpenLayers/Popup.js)
       File: Anchored  (no auto-title, OpenLayers/Popup/Anchored.js)
-      File: AnchoredBubble  (no auto-title, OpenLayers/Popup/AnchoredBubble.js)
       File: Framed  (no auto-title, OpenLayers/Popup/Framed.js)
       File: FramedCloud  (no auto-title, OpenLayers/Popup/FramedCloud.js)
       }  # Group: Popup
@@ -481,6 +498,11 @@ Group: OpenLayers  {
       File: Spherical  (no auto-title, OpenLayers/Spherical.js)
       File: Animation  (OpenLayers/Animation.js)
       File: Events.buttonclick  (OpenLayers/Events/buttonclick.js)
+      File: Events.featureclick  (OpenLayers/Events/featureclick.js)
+      File: TileManager  (OpenLayers/TileManager.js)
+      File: Util.vendorPrefix  (OpenLayers/Util/vendorPrefix.js)
+      File: WPSClient  (OpenLayers/WPSClient.js)
+      File: WPSProcess  (OpenLayers/WPSProcess.js)
       }  # Group: OpenLayers
 
    }  # Group: OpenLayers
diff --git a/doc_config/Topics.txt b/doc_config/Topics.txt
index 087d348..84d6dcc 100644
--- a/doc_config/Topics.txt
+++ b/doc_config/Topics.txt
@@ -1,4 +1,4 @@
-Format: 1.52
+Format: 1.51
 
 # This is the Natural Docs topics file for this project.  If you change anything
 # here, it will apply to THIS PROJECT ONLY.  If you'd like to change something
diff --git a/examples/WMSDescribeLayerParser.html b/examples/WMSDescribeLayerParser.html
index d1c63e7..94be309 100644
--- a/examples/WMSDescribeLayerParser.html
+++ b/examples/WMSDescribeLayerParser.html
@@ -12,11 +12,12 @@
           format = new OpenLayers.Format.WMSDescribeLayer();
           html = "<br>";
           resp = format.read(req.responseText);
-          for(var i = 0; i < resp.length; i++) {
-            html += "Layer: typeName: "+ resp[i].typeName+",";
+          var layerDescriptions = resp.layerDescriptions;
+          for(var i = 0; i < layerDescriptions.length; i++) {
+            html += "Layer: typeName: "+layerDescriptions[i].typeName+",";
                 html += "<ul>";
-                html += "<li>owsURL: "+resp[i].owsURL+"</li>";
-                html += "<li>owsType: "+resp[i].owsType+"</li>";
+                html += "<li>owsURL: "+layerDescriptions[i].owsURL+"</li>";
+                html += "<li>owsType: "+layerDescriptions[i].owsType+"</li>";
                 html += "</ul>"
           }
           document.getElementById('output').innerHTML = html;
diff --git a/examples/all-overlays-google.html b/examples/all-overlays-google.html
index 3b7790e..c05fc0c 100644
--- a/examples/all-overlays-google.html
+++ b/examples/all-overlays-google.html
@@ -6,7 +6,6 @@
     <meta name="apple-mobile-web-app-capable" content="yes">
         <title>OpenLayers All Overlays with Google and OSM</title>
         <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
-        <link rel="stylesheet" href="../theme/default/google.css" type="text/css">
         <link rel="stylesheet" href="style.css" type="text/css">
         <script src="http://maps.google.com/maps/api/js?v=3&sensor=false"></script>
         <script src="../lib/OpenLayers.js"></script>
diff --git a/examples/bing-tiles.js b/examples/bing-tiles.js
index 0d4546b..e99c589 100644
--- a/examples/bing-tiles.js
+++ b/examples/bing-tiles.js
@@ -23,7 +23,9 @@ var hybrid = new OpenLayers.Layer.Bing({
 
 map.addLayers([road, aerial, hybrid]);
 map.addControl(new OpenLayers.Control.LayerSwitcher());
+// Zoom level numbering depends on metadata from Bing, which is not yet loaded.
+var zoom = map.getZoomForResolution(76.43702827453613);
 map.setCenter(new OpenLayers.LonLat(-71.147, 42.472).transform(
     new OpenLayers.Projection("EPSG:4326"),
     map.getProjectionObject()
-), 11);
+), zoom);
diff --git a/examples/bootstrap.html b/examples/bootstrap.html
new file mode 100644
index 0000000..7f3b78b
--- /dev/null
+++ b/examples/bootstrap.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <title>Bootstraped OpenLayers</title>
+    <link rel="stylesheet" href="../theme/default/style.css">
+    <link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.1/css/bootstrap.min.css" rel="stylesheet">
+    <style>
+        body {
+            padding-top: 60px;
+            padding-bottom: 40px;
+        }
+        #map {
+            height: 350px;
+            background-color: #eee;
+        }
+        .olControlAttribution {
+            bottom: 3px;
+            left: 10px;
+            line-height: 9px;
+            font-size: 9px;
+            color: #ccc;
+        }
+    </style>
+    <link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.1/css/bootstrap-responsive.min.css" rel="stylesheet">
+</head>
+<body>
+    <div class="navbar navbar-inverse navbar-fixed-top">
+        <div class="navbar-inner">
+            <div class="container-fluid">
+                <a class="brand" href="/">openlayers.org</a>
+                <ul class="nav">
+                    <li>
+                        <a href="./">
+                            <i class="icon-globe icon-white"></i> examples
+                        </a>
+                    </li>
+                </ul>
+            </div>
+        </div>
+    </div>
+    <div class="container-fluid" ng-controller="AlertsCtrl">
+        <div class="row-fluid">
+            <div class="span7">
+                <div id="map"></div>
+            </div>
+            <div class="span5">
+                <h4>OpenLayers and Bootstrap</h4>
+                <p>
+                    This example demonstrates an OpenLayers map in a fluid 
+                    layout using Bootstrap CSS.
+                </p>
+                <p>
+                    Note that the OpenLayers stylesheet is loaded before 
+                    Bootstrap.  The Bootstrap CSS sets the maximum width for
+                    images to be 100% (of their containing element).
+                </p>
+<pre><code>img {
+    max-width: 100%;
+}
+</code></pre>
+                <p>
+                    This causes problems for images that you might want to be
+                    bigger than their containing element (e.g. big tile in small
+                    map viewport).  To overcome this, the OpenLayers CSS
+                    overrides this <code>max-width</code> setting.  If you are 
+                    not loading the OpenLayers default CSS or are having trouble 
+                    with tile sizing and Bootstrap, add the following to your
+                    markup:
+                </p>
+<pre><code><style>
+    img.olTileImage {
+        max-width: none;
+    }
+</style></code></pre>
+            </div>
+        </div>
+    </div>
+    <script src="../lib/OpenLayers.js"></script>
+    <script src="bootstrap.js"></script>
+</body>
+</html>
diff --git a/examples/bootstrap.js b/examples/bootstrap.js
new file mode 100644
index 0000000..e31b0a1
--- /dev/null
+++ b/examples/bootstrap.js
@@ -0,0 +1,31 @@
+var map = new OpenLayers.Map({
+    div: "map",
+    projection: "EPSG:900913",
+    layers: [
+        new OpenLayers.Layer.XYZ(
+            "Imagery",
+            [
+                "http://oatile1.mqcdn.com/naip/${z}/${x}/${y}.png",
+                "http://oatile2.mqcdn.com/naip/${z}/${x}/${y}.png",
+                "http://oatile3.mqcdn.com/naip/${z}/${x}/${y}.png",
+                "http://oatile4.mqcdn.com/naip/${z}/${x}/${y}.png"
+            ],
+            {
+                attribution: "Tiles Courtesy of <a href='http://open.mapquest.co.uk/' target='_blank'>MapQuest</a>. Portions Courtesy NASA/JPL-Caltech and U.S. Depart. of Agriculture, Farm Service Agency. <img src='http://developer.mapquest.com/content/osm/mq_logo.png' border='0'>",
+                transitionEffect: "resize",
+                wrapDateLine: true
+            }
+        )
+    ],
+    controls: [
+        new OpenLayers.Control.Navigation({
+            dragPanOptions: {
+                enableKinetic: true
+            }
+        }),
+        new OpenLayers.Control.Zoom(),
+        new OpenLayers.Control.Attribution()
+    ],
+    center: [0, 0],
+    zoom: 1
+});
diff --git a/examples/cache-write.js b/examples/cache-write.js
index 8f4ec9e..e9db31a 100644
--- a/examples/cache-write.js
+++ b/examples/cache-write.js
@@ -8,13 +8,10 @@ function init() {
         div: "map",
         projection: "EPSG:900913",
         layers: [
-            new OpenLayers.Layer.WMS("OSGeo", "http://vmap0.tiles.osgeo.org/wms/vmap0", {
-                layers: "basic"
-            }, {
-                eventListeners: {
-                    tileloaded: updateStatus
-                }
-            })
+            new OpenLayers.Layer.WMS(
+                "OSGeo", "http://vmap0.tiles.osgeo.org/wms/vmap0",
+                {layers: "basic"}
+            )
         ],
         center: [0, 0],
         zoom: 1
@@ -38,6 +35,7 @@ function init() {
     };
 
     // update the number of cached tiles and detect local storage support
+    map.layers[0].events.on({'tileloaded': updateStatus});
     function updateStatus() {
         if (window.localStorage) {
             status.innerHTML = localStorage.length + " entries in cache.";
diff --git a/examples/cartodb-geojson.html b/examples/cartodb-geojson.html
new file mode 100644
index 0000000..2d78970
--- /dev/null
+++ b/examples/cartodb-geojson.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Reading Features From CartoDB using GeoJSON</title>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <script src="../lib/OpenLayers.js"></script>
+  </head>
+  <body>
+    <h1 id="title">Reading Features From CartoDB using GeoJSON</h1>
+    <div id="tags">
+      protocol, script, cartodb
+    </div>
+    <p id="shortdesc">
+      Demonstrates how to load features on OpenLayers using CartoDB SQL API.
+    </p>
+    <div id="map" class="smallmap"></div>
+    <div id="docs">
+      <p>
+        <a href="http://cartodb.com/">CartoDB</a> is an Open Source
+        Geopatial Database on the cloud. It allows you to import your
+        data in shapefiles, KML, OpenStreeMap files, CSV, etc. and
+        then analyze and visualize it. Internally CartoDB uses PostGIS
+        2.0 so all functionality in PostGIS can be used straight
+        away. CartoDB exposes two APIS. One
+        to <a href="http://developers.cartodb.com/documentation/cartodb-apis.html#maps_api">generate maps</a> 
+	as tiles with interactivity, and another <a href="http://developers.cartodb.com/documentation/cartodb-apis.html#sql_api">SQL API</a> 
+	to retrieve vector data using among other formats, GeoJSON. In
+        this example we do a very simple query to obtain all protected
+        areas in Costa Rica from a public table. You can adapt the SQL
+        to include where clauses or complicate geospatial queries.
+      </p>
+      <p>
+        View the source code of this page to see how this is done. And
+        check the table on CartoDB
+        for <a href="https://examples.cartodb.com/tables/costa_rica_pa/public#/map">Protected Areas in Costa Rica</a>
+      </p>
+    </div>
+    <script>
+        var map = new OpenLayers.Map({
+            div: "map",
+            layers: [
+                new OpenLayers.Layer.OSM(),
+                new OpenLayers.Layer.Vector("Vectors", {
+                    projection: new OpenLayers.Projection("EPSG:4326"),
+                    strategies: [new OpenLayers.Strategy.Fixed()],
+                    protocol: new OpenLayers.Protocol.Script({
+                        url: "http://examples.cartodb.com/api/v2/sql",
+                        params: {
+			    q: "select * from costa_rica_pa LIMIT 50",
+			    format: "geojson"
+			},
+                        format: new OpenLayers.Format.GeoJSON({
+                            ignoreExtraDims: true
+                        }),
+                        callbackKey: "callback"
+                    }),
+                    eventListeners: {
+                        "featuresadded": function() {
+                            this.map.zoomToExtent(this.getDataExtent());
+                        }
+                    }
+                })
+            ]
+        });
+    </script>
+  </body>
+</html>
diff --git a/examples/click.html b/examples/click.html
index 094ff29..5b6a025 100644
--- a/examples/click.html
+++ b/examples/click.html
@@ -34,7 +34,7 @@
                 }, 
 
                 trigger: function(e) {
-                    var lonlat = map.getLonLatFromViewPortPx(e.xy);
+                    var lonlat = map.getLonLatFromPixel(e.xy);
                     alert("You clicked near " + lonlat.lat + " N, " +
                                               + lonlat.lon + " E");
                 }
@@ -75,7 +75,7 @@
 
         <p id="shortdesc">
             This example shows the use of the click handler and 
-            getLonLatFromViewPortPx functions to trigger events on mouse click. 
+            getLonLatFromPixel functions to trigger events on mouse click. 
         </p>
 
         <div id="map" class="smallmap"></div>
diff --git a/examples/data/4_m_citylights_lg.gif b/examples/data/4_m_citylights_lg.gif
new file mode 100644
index 0000000..4bf9b87
Binary files /dev/null and b/examples/data/4_m_citylights_lg.gif differ
diff --git a/examples/data/tazdem.tiff b/examples/data/tazdem.tiff
new file mode 100644
index 0000000..4f58402
Binary files /dev/null and b/examples/data/tazdem.tiff differ
diff --git a/examples/editing-methods.js b/examples/editing-methods.js
index 6c139a2..03d5e82 100644
--- a/examples/editing-methods.js
+++ b/examples/editing-methods.js
@@ -20,7 +20,7 @@ map.addControl(draw);
 draw.activate();
 
 // handle clicks on method links
-$("insertXY").onclick = function() {
+document.getElementById("insertXY").onclick = function() {
     var values = parseInput(
         window.prompt(
             "Enter map coordinates for new point (e.g. '-111, 46')", "x, y"
@@ -30,7 +30,7 @@ $("insertXY").onclick = function() {
         draw.insertXY(values[0], values[1]);
     }
 };
-$("insertDeltaXY").onclick = function() {
+document.getElementById("insertDeltaXY").onclick = function() {
     var values = parseInput(
         window.prompt(
             "Enter offset values for new point (e.g. '15, -10')", "dx, dy"
@@ -40,7 +40,7 @@ $("insertDeltaXY").onclick = function() {
         draw.insertDeltaXY(values[0], values[1]);
     }
 };
-$("insertDirectionLength").onclick = function() {
+document.getElementById("insertDirectionLength").onclick = function() {
     var values = parseInput(
         window.prompt(
             "Enter direction and length offset values for new point (e.g. '-45, 10')", "direction, length"
@@ -50,7 +50,7 @@ $("insertDirectionLength").onclick = function() {
         draw.insertDirectionLength(values[0], values[1]);
     }
 };
-$("insertDeflectionLength").onclick = function() {
+document.getElementById("insertDeflectionLength").onclick = function() {
     var values = parseInput(
         window.prompt(
             "Enter deflection and length offset values for new point (e.g. '15, 20')", "deflection, length"
@@ -60,10 +60,10 @@ $("insertDeflectionLength").onclick = function() {
         draw.insertDeflectionLength(values[0], values[1]);
     }
 };
-$("cancel").onclick = function() {
+document.getElementById("cancel").onclick = function() {
     draw.cancel();
 };
-$("finishSketch").onclick = function() {
+document.getElementById("finishSketch").onclick = function() {
     draw.finishSketch();
 };
 
diff --git a/examples/encoded-polyline.html b/examples/encoded-polyline.html
new file mode 100644
index 0000000..c40a243
--- /dev/null
+++ b/examples/encoded-polyline.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <script src="../lib/OpenLayers.js"></script>
+    <script type="text/javascript">
+        var lon = 12;
+        var lat = 52.85;
+        var zoom = 9;
+        var map, layer;
+
+        function init(){
+            map = new OpenLayers.Map( 'map' );
+            layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
+                    "http://vmap0.tiles.osgeo.org/wms/vmap0",
+                    {layers: 'basic'} );
+            map.addLayer(layer);
+            map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
+
+            var encoded = "m}e`IqvbgAkJqyAoI}w at wTupA}Myb@{CmFsDcEuEgCgFa at oFj@mNzFsFpEiLpQmDxIkMxa at cGpVqE`XqC~Y_Bfw at b@jdAyAzHyCeBRmGlDIp at zHcDpBi@kG`D{@hArHuCtDqBiEhCsCxBfGiBzGcE@{@yF|GtBg at xIsDrB{BcEbAoFnDt at t@|I{BxGiDgABqG`DkAzBbG_A`IoDd at q@cGrD}AhBvGcC~FgDeBbAwF~DjBPrIqDjC}B}DlBmF|DvARbJeDlEuCqCfAiFdExAh at fIwCbEuCgCf@mG~CqBdDvDE|IgDzCsBaE~AgFvD|BV|IsCvG{Et at qCgERaHnCyElEBtCrFMrI_D|DqCyCz at _GlQ~ApEcBdq at es@vx at srApC_Fjc@}y at fCoEfCkCtCvArAvHf@tJCbJeBnHqDrD_E\\qDuC{AeHTaHvBsDbD?lEvPbD~C~Jb@`DaCvDjA [...]
+            var format = new OpenLayers.Format.EncodedPolyline({geometryType:"polygon"});
+            var vector_layer = new OpenLayers.Layer.Vector();
+            map.addLayer(vector_layer);
+            vector_layer.addFeatures(format.read(encoded));
+        }
+    </script>
+  </head>
+  <body onload="init()">
+    <h1 id="title">Encoded Polyline Example</h1>
+
+    <div id="tags">
+       Encoded Polyline, Google
+    </div>
+
+      <p id="shortdesc">
+        Demonstrate the use of the Encoded Polyline format.
+    </p>
+    <div id="map" class="smallmap"></div>
+    <div id="docs">
+        <p>This example uses the Encoded Polyline format.</p>
+    </div>
+  </body>
+</html>
diff --git a/examples/feature-events.html b/examples/feature-events.html
new file mode 100644
index 0000000..923e554
--- /dev/null
+++ b/examples/feature-events.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <title>OpenLayers Feature Events Example</title>
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <style type="text/css">
+    #result {
+        height: 60px;
+        width: 514px;
+        font-size: smaller;
+        overflow: auto;
+        margin-top: 5px;
+    }
+    </style>
+  </head>
+  <body>
+    <h1 id="title">Feature Events Example</h1>
+
+    <div id="tags">
+        feature, select, hover
+    </div>
+
+    <div id="shortdesc">Feature hover and click events</div>
+
+    <div id="map" class="smallmap"></div>
+    <div id="docs">
+        <p id="result">Hover over or click features on the map.</p>
+
+        <p>This example shows how to use the 'featureclick', 'nofeatureclick',
+            'featureover' and 'featureout' events to make features interactive.
+            Look at the <a href="feature-events.js">feature-events.js</a> source
+            code to see how this is done.</p>
+        
+        <p>Note that these events can be registered both on the map and on
+            individual layers. If many layers need to be observed, it is
+            recommended to register listeners once on the map for performance
+            reasons.</p>
+    </div>
+    <script src="../lib/OpenLayers.js"></script>
+    <script src="feature-events.js"></script>
+  </body>
+</html>
diff --git a/examples/feature-events.js b/examples/feature-events.js
new file mode 100644
index 0000000..8a6fe28
--- /dev/null
+++ b/examples/feature-events.js
@@ -0,0 +1,67 @@
+var layerListeners = {
+    featureclick: function(e) {
+        log(e.object.name + " says: " + e.feature.id + " clicked.");
+        return false;
+    },
+    nofeatureclick: function(e) {
+        log(e.object.name + " says: No feature clicked.");
+    }
+};
+
+var style = new OpenLayers.StyleMap({
+    'default': OpenLayers.Util.applyDefaults(
+        {label: "${l}", pointRadius: 10},
+        OpenLayers.Feature.Vector.style["default"]
+    ),
+    'select': OpenLayers.Util.applyDefaults(
+        {pointRadius: 10},
+        OpenLayers.Feature.Vector.style.select
+    )
+});
+var layer1 = new OpenLayers.Layer.Vector("Layer 1", {
+    styleMap: style,
+    eventListeners: layerListeners
+});
+layer1.addFeatures([
+    new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(-1 -1)"), {l:1}),
+    new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(1 1)"), {l:1})
+]);
+var layer2 = new OpenLayers.Layer.Vector("Layer 2", {
+    styleMap: style,
+    eventListeners: layerListeners
+});
+layer2.addFeatures([
+    new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(-1 1)"), {l:2}),
+    new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(1 -1)"), {l:2})
+]);
+
+var map = new OpenLayers.Map({
+    div: "map",
+    allOverlays: true,
+    layers: [layer1, layer2],
+    zoom: 6,
+    center: [0, 0],
+    eventListeners: {
+        featureover: function(e) {
+            e.feature.renderIntent = "select";
+            e.feature.layer.drawFeature(e.feature);
+            log("Map says: Pointer entered " + e.feature.id + " on " + e.feature.layer.name);
+        },
+        featureout: function(e) {
+            e.feature.renderIntent = "default";
+            e.feature.layer.drawFeature(e.feature);
+            log("Map says: Pointer left " + e.feature.id + " on " + e.feature.layer.name);
+        },
+        featureclick: function(e) {
+            log("Map says: " + e.feature.id + " clicked on " + e.feature.layer.name);
+        }
+    }
+});
+
+function log(msg) {
+    if (!log.timer) {
+        result.innerHTML = "";
+        log.timer = window.setTimeout(function() {delete log.timer;}, 100);
+    }
+    result.innerHTML += msg + "<br>";
+}
diff --git a/examples/fullScreen.js b/examples/fullScreen.js
index dc8ed19..1e03a53 100644
--- a/examples/fullScreen.js
+++ b/examples/fullScreen.js
@@ -1,18 +1,8 @@
-var urls = [
-    "http://a.tile.openstreetmap.org/${z}/${x}/${y}.png",
-    "http://b.tile.openstreetmap.org/${z}/${x}/${y}.png",
-    "http://c.tile.openstreetmap.org/${z}/${x}/${y}.png"
-];
-
 var map = new OpenLayers.Map({
     div: "map",
     layers: [
-        new OpenLayers.Layer.XYZ("OSM (with buffer)", urls, {
-            transitionEffect: "resize", buffer: 2, sphericalMercator: true
-        }),
-        new OpenLayers.Layer.XYZ("OSM (without buffer)", urls, {
-            transitionEffect: "resize", buffer: 0, sphericalMercator: true
-        })
+        new OpenLayers.Layer.OSM("OSM (without buffer)"),
+        new OpenLayers.Layer.OSM("OSM (with buffer)", null, {buffer: 2})
     ],
     controls: [
         new OpenLayers.Control.Navigation({
diff --git a/examples/fusiontables.html b/examples/fusiontables.html
index 8c75d6c..655ff19 100644
--- a/examples/fusiontables.html
+++ b/examples/fusiontables.html
@@ -20,11 +20,14 @@
         <div id="map" class="smallmap"></div>
         <div id="docs">
             <p>
-                Google Fusion Tables can be used to store features, and access them using SQL-type commands over HTTP. Tables can be made public, in which case no authorization is needed to read them. Geometries can be stored in Location columns in KML format. The default output is a CSV dump of each table row/column selected. Multi-line CSV files are not easy to parse in Javascript, but by adding a jsonCallback parameter to the HTTP command, the output will be a JSON object with the geo [...]
+                Google Fusion Tables can be used to store features, and access them using SQL-type commands over HTTP. Tables are accessed using an authorization key; create/update/delete of tables requires an OAuth2 token, but tables can be public, in which case a simple apikey is all that's needed to read them. Geometries can be stored in Location columns in KML format, but the default output is a JSON object with the geometry as GeoJSON. With a custom read method, this example parses  [...]
             </p>
             <p>
                 View the <a href="fusiontables.js" target="_blank">fusiontables.js</a>
-                source to see how this is done. <a href="https://www.google.com/fusiontables/DataSource?docid=1g5DrXcdotCiO_yffkdW0zhuJk0a1i80SPvERHI8">Table used</a>
+                source to see how this is done. You will need to get your own apikey from <a href="https://code.google.com/apis/console">Google's API Console</a> for this to function on your domain.
+            </p>
+            <p>
+                <a href="https://www.google.com/fusiontables/DataSource?docid=1g5DrXcdotCiO_yffkdW0zhuJk0a1i80SPvERHI8">Table used</a>. <a href="https://developers.google.com/fusiontables/docs/v1/using">Fusion Tables Developers Guide</a>
             </p>
         </div>
         <script src="fusiontables.js"></script>
diff --git a/examples/fusiontables.js b/examples/fusiontables.js
index aec2d86..57ae6e5 100644
--- a/examples/fusiontables.js
+++ b/examples/fusiontables.js
@@ -1,3 +1,6 @@
+// change this to your api key
+var apikey = "AIzaSyD_1zzMAoZjuP-m4LyhieuYmqiVJTEajyI";
+
 var map = new OpenLayers.Map({
     div: "map",
     layers: [
@@ -6,21 +9,24 @@ var map = new OpenLayers.Map({
             projection: new OpenLayers.Projection("EPSG:4326"),
             strategies: [new OpenLayers.Strategy.Fixed()],
             protocol: new OpenLayers.Protocol.Script({
-                url: "https://www.google.com/fusiontables/api/query",
-                params: {sql: "select * from 1g5DrXcdotCiO_yffkdW0zhuJk0a1i80SPvERHI8"},
+                url: "https://www.googleapis.com/fusiontables/v1/query",
+                params: {
+                    sql: "select * from 1g5DrXcdotCiO_yffkdW0zhuJk0a1i80SPvERHI8",
+                    key: apikey
+                },
                 format: new OpenLayers.Format.GeoJSON({
                     ignoreExtraDims: true,
                     read: function(json) {
                         var row, feature, atts = {}, features = [];
-                        var cols = json.table.cols; // column names
-                        for (var i = 0; i < json.table.rows.length; i++) {
-                            row = json.table.rows[i];
+                        var cols = json.columns; // column names
+                        for (var i = 0; i < json.rows.length; i++) {
+                            row = json.rows[i];
                             feature = new OpenLayers.Feature.Vector();
                             atts = {};
                             for (var j = 0; j < row.length; j++) {
                                 // 'location's are json objects, other types are strings
                                 if (typeof row[j] === "object") {
-                                    feature.geometry = this.parseGeometry(row[j]);
+                                    feature.geometry = this.parseGeometry(row[j].geometry);
                                 } else {
                                     atts[cols[j]] = row[j];
                                 }
@@ -33,8 +39,7 @@ var map = new OpenLayers.Map({
                         }
                         return features;
                     }
-                }),
-                callbackKey: "jsonCallback"
+                })
             }),
             eventListeners: {
                 "featuresadded": function () {
diff --git a/examples/game-accel-ball.html b/examples/game-accel-ball.html
index 40bb02d..c832e86 100644
--- a/examples/game-accel-ball.html
+++ b/examples/game-accel-ball.html
@@ -35,7 +35,7 @@
         function init() {
             map = new OpenLayers.Map( 'map', 
                 {
-                 'maxExtent': new OpenLayers.Bounds(0, 0, $("map").clientWidth, $("map").clientHeight), 
+                 'maxExtent': new OpenLayers.Bounds(0, 0, document.getElementById("map").clientWidth, document.getElementById("map").clientHeight), 
                  controls: [], 
                  maxResolution: 'auto'} 
             );
diff --git a/examples/geojson-reprojected.html b/examples/geojson-reprojected.html
new file mode 100644
index 0000000..2e60638
--- /dev/null
+++ b/examples/geojson-reprojected.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <title>OpenLayers GeoJSON Reprojected Example</title>
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <style type="text/css">
+    .olControlAttribution {
+        left: 2px;
+        right: inherit;
+        bottom: 3px;
+        line-height: 11px;
+    }
+    </style>
+  </head>
+  <body>
+    <h1 id="title">GeoJSON Reprojected</h1>
+
+    <div id="tags">
+        geojson, bing, projection
+    </div>
+
+    <div id="shortdesc">Display GeoJSON data over Bing tiles</div>
+
+    <div id="map" class="smallmap"></div>
+
+    <div id="docs">
+        <p>This example demonstrates the use of GeoJSON over Bing tiles.  The
+        GeoJSON vector data is in geographic coordinates (EPSG:4326).  The Bing
+        tiles are in a spherical mercator projection (EPSG:900913).  By setting
+        the <code>projection</code> property of the GeoJSON layer to the source
+        projection (EPSG:4326), the features are properly displayed over the
+        base layer.  In general, the map projection determines how raster or
+        vector data is displayed.  The layer projection corresponds to the
+        projection of the data source.
+        <p>See the
+        <a target="_blank" href="geojson-reprojected.js">geojson-reprojected.js</a>
+        source for details on how this is done.</p>
+    </div>
+    <script src="../lib/OpenLayers.js"></script>
+    <script src="geojson-reprojected.js"></script>
+  </body>
+</html>
diff --git a/examples/geojson-reprojected.js b/examples/geojson-reprojected.js
new file mode 100644
index 0000000..d54c6e9
--- /dev/null
+++ b/examples/geojson-reprojected.js
@@ -0,0 +1,27 @@
+// API key for http://openlayers.org. Please get your own at
+// http://bingmapsportal.com/ and use that instead.
+var apiKey = "AqTGBsziZHIJYYxgivLBf0hVdrAk9mWO5cQcb8Yux8sW5M8c8opEC2lZqKR1ZZXf";
+
+var hybrid = new OpenLayers.Layer.Bing({
+    key: apiKey,
+    type: "AerialWithLabels",
+    name: "Bing Aerial With Labels"
+});
+
+var vector = new OpenLayers.Layer.Vector("GeoJSON", {
+    projection: "EPSG:4326",
+    strategies: [new OpenLayers.Strategy.Fixed()],
+    protocol: new OpenLayers.Protocol.HTTP({
+        url: "geojson-reprojected.json",
+        format: new OpenLayers.Format.GeoJSON()
+    })
+});
+
+var center = new OpenLayers.LonLat(-109.6, 46.7).transform("EPSG:4326", "EPSG:900913");
+
+var map = new OpenLayers.Map({
+    div: "map",
+    layers: [hybrid, vector],
+    center: center,
+    zoom: 4
+});
diff --git a/examples/geojson-reprojected.json b/examples/geojson-reprojected.json
new file mode 100644
index 0000000..82153fa
--- /dev/null
+++ b/examples/geojson-reprojected.json
@@ -0,0 +1 @@
+{"type":"FeatureCollection","features":[{"type":"Feature","id":"USA-MT","properties":{"fips":"30","name":"Montana"},"geometry":{"type":"Polygon","coordinates":[[[-104.047534,49.000239],[-104.042057,47.861036],[-104.047534,45.944106],[-104.042057,44.996596],[-104.058488,44.996596],[-105.91517,45.002073],[-109.080842,45.002073],[-111.05254,45.002073],[-111.047063,44.476286],[-111.227803,44.580348],[-111.386634,44.75561],[-111.616665,44.547487],[-111.819312,44.509148],[-111.868605,44.563917 [...]
diff --git a/examples/geolocation.js b/examples/geolocation.js
index 1afc12d..3d8d6f4 100644
--- a/examples/geolocation.js
+++ b/examples/geolocation.js
@@ -92,16 +92,15 @@ geolocate.events.register("locationupdated",geolocate,function(e) {
 geolocate.events.register("locationfailed",this,function() {
     OpenLayers.Console.log('Location detection failed');
 });
-
-$('locate').onclick = function() {
+document.getElementById('locate').onclick = function() {
     vector.removeAllFeatures();
     geolocate.deactivate();
-    $('track').checked = false;
+    document.getElementById('track').checked = false;
     geolocate.watch = false;
     firstGeolocation = true;
     geolocate.activate();
 };
-$('track').onclick = function() {
+document.getElementById('track').onclick = function() {
     vector.removeAllFeatures();
     geolocate.deactivate();
     if (this.checked) {
@@ -110,4 +109,4 @@ $('track').onclick = function() {
         geolocate.activate();
     }
 };
-$('track').checked = false;
+document.getElementById('track').checked = false;
diff --git a/examples/getfeatureinfo-control.html b/examples/getfeatureinfo-control.html
index cb0bec1..baecd42 100644
--- a/examples/getfeatureinfo-control.html
+++ b/examples/getfeatureinfo-control.html
@@ -48,7 +48,6 @@
     </style>
     <script defer="defer" type="text/javascript">
     OpenLayers.ProxyHost = "proxy.cgi?url=";
-    
     var map, infocontrols, water, highlightlayer;
     
     function load() {
@@ -125,7 +124,7 @@
              highlightLayer.addFeatures(evt.features);
              highlightLayer.redraw();
         } else {
-            $('responseText').innerHTML = evt.text;
+            document.getElementById('responseText').innerHTML = evt.text;
         }
     }
 
diff --git a/examples/google-v3-alloverlays.html b/examples/google-v3-alloverlays.html
index d940266..b244d9e 100644
--- a/examples/google-v3-alloverlays.html
+++ b/examples/google-v3-alloverlays.html
@@ -6,7 +6,6 @@
     <meta name="apple-mobile-web-app-capable" content="yes">
         <title>OpenLayers Google (v3) Layer Example</title>
         <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
-        <link rel="stylesheet" href="../theme/default/google.css" type="text/css">
         <link rel="stylesheet" href="style.css" type="text/css">
         <script src="http://maps.google.com/maps/api/js?v=3&sensor=false"></script>
         <script src="../lib/OpenLayers.js"></script>
diff --git a/examples/google-v3.html b/examples/google-v3.html
index 4365daf..5c11ae9 100644
--- a/examples/google-v3.html
+++ b/examples/google-v3.html
@@ -6,7 +6,6 @@
     <meta name="apple-mobile-web-app-capable" content="yes">
         <title>OpenLayers Google (v3) Layer Example</title>
         <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
-        <link rel="stylesheet" href="../theme/default/google.css" type="text/css">
         <link rel="stylesheet" href="style.css" type="text/css">
         <script src="http://maps.google.com/maps/api/js?v=3&sensor=false"></script>
         <script src="../lib/OpenLayers.js"></script>
@@ -30,21 +29,6 @@
                 spherical mercator projection.  See the 
                 <a href="google-v3.js" target="_blank">google-v3.js source</a> 
                 to see how this is done.
-            <p>
-                In order to position the Google attribution div in the default 
-                location, you must include the extra theme/default/google.css 
-                stylesheet.
-            </p>
-            <p>
-                <strong>Note on Google Maps API versioning:</strong>
-                This example uses the "nightly" version of Google Maps
-                API. This is specified by using <code>v=3</code> in the
-                the Google Maps API URL. Production applications should use the
-                "release" or "frozen" versions of Google Maps
-                API. See the <code>OpenLayers.Layer.Google.v3</code> API
-                docs, and the
-                <a href="https://developers.google.com/maps/documentation/javascript/basics#Versioning">Versioning Section</a>
-                of the Google Maps API docs, for more details.
             </p>
         </div>
     </body>
diff --git a/examples/google-v3.js b/examples/google-v3.js
index 4d4cd20..e81c6a4 100644
--- a/examples/google-v3.js
+++ b/examples/google-v3.js
@@ -1,35 +1,34 @@
 var map;
 
 function init() {
-    map = new OpenLayers.Map('map');
+    map = new OpenLayers.Map('map', {
+        projection: 'EPSG:3857',
+        layers: [
+            new OpenLayers.Layer.Google(
+                "Google Physical",
+                {type: google.maps.MapTypeId.TERRAIN}
+            ),
+            new OpenLayers.Layer.Google(
+                "Google Streets", // the default
+                {numZoomLevels: 20}
+            ),
+            new OpenLayers.Layer.Google(
+                "Google Hybrid",
+                {type: google.maps.MapTypeId.HYBRID, numZoomLevels: 20}
+            ),
+            new OpenLayers.Layer.Google(
+                "Google Satellite",
+                {type: google.maps.MapTypeId.SATELLITE, numZoomLevels: 22}
+            )
+        ],
+        center: new OpenLayers.LonLat(10.2, 48.9)
+            // Google.v3 uses web mercator as projection, so we have to
+            // transform our coordinates
+            .transform('EPSG:4326', 'EPSG:3857'),
+        zoom: 5
+    });
     map.addControl(new OpenLayers.Control.LayerSwitcher());
     
-    var gphy = new OpenLayers.Layer.Google(
-        "Google Physical",
-        {type: google.maps.MapTypeId.TERRAIN}
-    );
-    var gmap = new OpenLayers.Layer.Google(
-        "Google Streets", // the default
-        {numZoomLevels: 20}
-    );
-    var ghyb = new OpenLayers.Layer.Google(
-        "Google Hybrid",
-        {type: google.maps.MapTypeId.HYBRID, numZoomLevels: 20}
-    );
-    var gsat = new OpenLayers.Layer.Google(
-        "Google Satellite",
-        {type: google.maps.MapTypeId.SATELLITE, numZoomLevels: 22}
-    );
-
-    map.addLayers([gphy, gmap, ghyb, gsat]);
-
-    // Google.v3 uses EPSG:900913 as projection, so we have to
-    // transform our coordinates
-    map.setCenter(new OpenLayers.LonLat(10.2, 48.9).transform(
-        new OpenLayers.Projection("EPSG:4326"),
-        map.getProjectionObject()
-    ), 5);
-    
     // add behavior to html
     var animate = document.getElementById("animate");
     animate.onclick = function() {
diff --git a/examples/highlight-feature.html b/examples/highlight-feature.html
index 73cae24..81e5c6f 100644
--- a/examples/highlight-feature.html
+++ b/examples/highlight-feature.html
@@ -68,8 +68,6 @@
             highlightCtrl.activate();
             selectCtrl.activate();
 
-            map.addControl(new OpenLayers.Control.EditingToolbar(vectors));
-
             map.setCenter(new OpenLayers.LonLat(0, 0), 1);
 
         }
diff --git a/examples/image-layer.html b/examples/image-layer.html
index 3d9bbf2..235f9fc 100644
--- a/examples/image-layer.html
+++ b/examples/image-layer.html
@@ -19,14 +19,12 @@
         function init(){
             map = new OpenLayers.Map('map');
 
-            var options = {numZoomLevels: 3};
-
             var graphic = new OpenLayers.Layer.Image(
                 'City Lights',
-                'http://earthtrends.wri.org/images/maps/4_m_citylights_lg.gif',
+                'data/4_m_citylights_lg.gif',
                 new OpenLayers.Bounds(-180, -88.759, 180, 88.759),
                 new OpenLayers.Size(580, 288),
-                options
+                {numZoomLevels: 3}
             );
             
             graphic.events.on({
@@ -38,9 +36,12 @@
                 }
             });
 
-            var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
-                "http://t1.hypercube.telascience.org/cgi-bin/landsat7", 
-                {layers: "landsat7"}, options);
+            var jpl_wms = new OpenLayers.Layer.WMS(
+                "Global Imagery",
+                "http://demo.opengeo.org/geoserver/wms",
+                {layers: "bluemarble"},
+                {maxExtent: [-160, -88.759, 160, 88.759], numZoomLevels: 3}
+            );
 
             map.addLayers([graphic, jpl_wms]);
             map.addControl(new OpenLayers.Control.LayerSwitcher());
diff --git a/examples/mapbox.js b/examples/mapbox.js
index 134d0d8..f5679dc 100644
--- a/examples/mapbox.js
+++ b/examples/mapbox.js
@@ -1,35 +1,21 @@
-var streets = new OpenLayers.Layer.XYZ(
-    "MapBox Streets",
+var earth = new OpenLayers.Layer.XYZ(
+    "Natural Earth",
     [
-        "http://a.tiles.mapbox.com/v3/mapbox.mapbox-streets/${z}/${x}/${y}.png",
-        "http://b.tiles.mapbox.com/v3/mapbox.mapbox-streets/${z}/${x}/${y}.png",
-        "http://c.tiles.mapbox.com/v3/mapbox.mapbox-streets/${z}/${x}/${y}.png",
-        "http://d.tiles.mapbox.com/v3/mapbox.mapbox-streets/${z}/${x}/${y}.png"
+        "http://a.tiles.mapbox.com/v3/mapbox.natural-earth-hypso-bathy/${z}/${x}/${y}.png",
+        "http://b.tiles.mapbox.com/v3/mapbox.natural-earth-hypso-bathy/${z}/${x}/${y}.png",
+        "http://c.tiles.mapbox.com/v3/mapbox.natural-earth-hypso-bathy/${z}/${x}/${y}.png",
+        "http://d.tiles.mapbox.com/v3/mapbox.natural-earth-hypso-bathy/${z}/${x}/${y}.png"
     ], {
-        attribution: "Tiles © <a href='http://mapbox.com/'>MapBox</a> | " + 
-            "Data © <a href='http://www.openstreetmap.org/'>OpenStreetMap</a> " +
-            "and contributors, CC-BY-SA",
+        attribution: "Tiles © <a href='http://mapbox.com/'>MapBox</a>",
         sphericalMercator: true,
         wrapDateLine: true,
-        transitionEffect: "resize",
-        buffer: 1,
-        numZoomLevels: 17
+        numZoomLevels: 5
     }
 );
 
 var map = new OpenLayers.Map({
     div: "map",
-    layers: [streets],
-    controls: [
-        new OpenLayers.Control.Attribution(),
-        new OpenLayers.Control.Navigation({
-            dragPanOptions: {
-                enableKinetic: true
-            }
-        }),
-        new OpenLayers.Control.Zoom(),
-        new OpenLayers.Control.Permalink({anchor: true})
-    ],
+    layers: [earth],
     center: [0, 0],
     zoom: 1
 });
diff --git a/examples/mapquest.html b/examples/mapquest.html
new file mode 100644
index 0000000..0fc02ec
--- /dev/null
+++ b/examples/mapquest.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <title>OpenLayers MapQuest Demo</title>
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body>
+    <h1 id="title">OpenLayers with MapQuest Tiles</h1>
+    <div id="shortdesc">
+        This example demonstrates the use of MapQuest tiles with OpenLayers.
+    </div>
+    <div id="tags">
+        MapQuest, OSM, XYZ
+    </div>
+    <div id="map" class="smallmap"></div>
+    <div id="docs">
+        <p>
+        See the <a href="mapquest.js" target="_blank">mapquest.js source</a> for 
+        detail on using MapQuest tiles in OpenLayers.
+        </p>
+    </div>
+    <script src="../lib/OpenLayers.js"></script>
+    <script src="mapquest.js"></script>
+</body>
\ No newline at end of file
diff --git a/examples/mapquest.js b/examples/mapquest.js
new file mode 100644
index 0000000..5a45d1c
--- /dev/null
+++ b/examples/mapquest.js
@@ -0,0 +1,36 @@
+var map = new OpenLayers.Map({
+    div: "map",
+    projection: "EPSG:900913",
+    layers: [
+        new OpenLayers.Layer.XYZ(
+            "OpenStreetMap", 
+            [
+                "http://otile1.mqcdn.com/tiles/1.0.0/map/${z}/${x}/${y}.png",
+                "http://otile2.mqcdn.com/tiles/1.0.0/map/${z}/${x}/${y}.png",
+                "http://otile3.mqcdn.com/tiles/1.0.0/map/${z}/${x}/${y}.png",
+                "http://otile4.mqcdn.com/tiles/1.0.0/map/${z}/${x}/${y}.png"
+            ],
+            {
+                attribution: "Data, imagery and map information provided by <a href='http://www.mapquest.com/'  target='_blank'>MapQuest</a>, <a href='http://www.openstreetmap.org/' target='_blank'>Open Street Map</a> and contributors, <a href='http://creativecommons.org/licenses/by-sa/2.0/' target='_blank'>CC-BY-SA</a>  <img src='http://developer.mapquest.com/content/osm/mq_logo.png' border='0'>",
+                transitionEffect: "resize"
+            }
+        ),
+        new OpenLayers.Layer.XYZ(
+            "Imagery",
+            [
+                "http://otile1.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.png",
+                "http://otile2.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.png",
+                "http://otile3.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.png",
+                "http://otile4.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.png"
+            ],
+            {
+                attribution: "Tiles Courtesy of <a href='http://open.mapquest.co.uk/' target='_blank'>MapQuest</a>. Portions Courtesy NASA/JPL-Caltech and U.S. Depart. of Agriculture, Farm Service Agency. <img src='http://developer.mapquest.com/content/osm/mq_logo.png' border='0'>",
+                transitionEffect: "resize"
+            }
+        )
+    ],
+    center: [0, 0],
+    zoom: 1
+});
+
+map.addControl(new OpenLayers.Control.LayerSwitcher());
diff --git a/examples/marker-shadow.html b/examples/marker-shadow.html
index 7048255..a244653 100644
--- a/examples/marker-shadow.html
+++ b/examples/marker-shadow.html
@@ -99,7 +99,7 @@
                 
                 var pixel = new OpenLayers.Pixel(center.x + x, center.y + y);
                 
-                var lonLat = map.getLonLatFromViewPortPx(pixel);
+                var lonLat = map.getLonLatFromPixel(pixel);
                 features.push(
                     new OpenLayers.Feature.Vector(
                         new OpenLayers.Geometry.Point(lonLat.lon, lonLat.lat)
diff --git a/examples/mobile-drawing.js b/examples/mobile-drawing.js
index 869880e..bac903c 100644
--- a/examples/mobile-drawing.js
+++ b/examples/mobile-drawing.js
@@ -5,7 +5,15 @@ function init() {
         styleMap: new OpenLayers.StyleMap({
             temporary: OpenLayers.Util.applyDefaults({
                 pointRadius: 16
-            }, OpenLayers.Feature.Vector.style.temporary)
+            }, OpenLayers.Feature.Vector.style.temporary),
+            'default': OpenLayers.Util.applyDefaults({
+                pointRadius: 16,
+                strokeWidth: 3,
+            }, OpenLayers.Feature.Vector.style['default']),
+            select: OpenLayers.Util.applyDefaults({
+                pointRadius: 16,
+                strokeWidth: 3
+            }, OpenLayers.Feature.Vector.style.select)
         })
     });
 
diff --git a/examples/mobile-jq.js b/examples/mobile-jq.js
index 1f61582..7e487cd 100644
--- a/examples/mobile-jq.js
+++ b/examples/mobile-jq.js
@@ -3,101 +3,108 @@ window.location.replace(window.location.href.split("#")[0] + "#mappage");
 
 var selectedFeature = null;
 
-$(document).ready(function() {
-
-    // fix height of content
-    function fixContentHeight() {
-        var footer = $("div[data-role='footer']:visible"),
-            content = $("div[data-role='content']:visible:visible"),
-            viewHeight = $(window).height(),
-            contentHeight = viewHeight - footer.outerHeight();
-
-        if ((content.outerHeight() + footer.outerHeight()) !== viewHeight) {
-            contentHeight -= (content.outerHeight() - content.height() + 1);
-            content.height(contentHeight);
-        }
+// fix height of content
+function fixContentHeight() {
+    var footer = $("div[data-role='footer']:visible"),
+        content = $("div[data-role='content']:visible:visible"),
+        viewHeight = $(window).height(),
+        contentHeight = viewHeight - footer.outerHeight();
 
-        if (window.map && window.map instanceof OpenLayers.Map) {
-            map.updateSize();
-        } else {
-            // initialize map
-            init(function(feature) { 
-                selectedFeature = feature; 
-                $.mobile.changePage("#popup", "pop"); 
-            });
-            initLayerList();
-        }
+    if ((content.outerHeight() + footer.outerHeight()) !== viewHeight) {
+        contentHeight -= (content.outerHeight() - content.height() + 1);
+        content.height(contentHeight);
     }
-    $(window).bind("orientationchange resize pageshow", fixContentHeight);
-    document.body.onload = fixContentHeight;
 
-    // Map zoom  
-    $("#plus").click(function(){
-        map.zoomIn();
-    });
-    $("#minus").click(function(){
-        map.zoomOut();
-    });
-    $("#locate").click(function(){
-        var control = map.getControlsBy("id", "locate-control")[0];
-        if (control.active) {
-            control.getCurrentLocation();
-        } else {
-            control.activate();
-        }
-    });
+    if (window.map && window.map instanceof OpenLayers.Map) {
+        map.updateSize();
+    } else {
+        // initialize map
+        init(function(feature) { 
+            selectedFeature = feature; 
+            $.mobile.changePage("#popup", "pop"); 
+        });
+        initLayerList();
+    }
+}
+
+// one-time initialisation of button handlers 
+
+$("#plus").live('click', function(){
+    map.zoomIn();
+});
+
+$("#minus").live('click', function(){
+    map.zoomOut();
+});
+
+$("#locate").live('click',function(){
+    var control = map.getControlsBy("id", "locate-control")[0];
+    if (control.active) {
+        control.getCurrentLocation();
+    } else {
+        control.activate();
+    }
+});
+
+//fix the content height AFTER jQuery Mobile has rendered the map page
+$('#mappage').live('pageshow',function (){
+    fixContentHeight();
+});
     
-    $('#popup').live('pageshow',function(event, ui){
-        var li = "";
-        for(var attr in selectedFeature.attributes){
-            li += "<li><div style='width:25%;float:left'>" + attr + "</div><div style='width:75%;float:right'>" 
-            + selectedFeature.attributes[attr] + "</div></li>";
+$(window).bind("orientationchange resize pageshow", fixContentHeight);
+
+
+
+$('#popup').live('pageshow',function(event, ui){
+    var li = "";
+    for(var attr in selectedFeature.attributes){
+        li += "<li><div style='width:25%;float:left'>" + attr + "</div><div style='width:75%;float:right'>" 
+        + selectedFeature.attributes[attr] + "</div></li>";
+    }
+    $("ul#details-list").empty().append(li).listview("refresh");
+});
+
+$('#searchpage').live('pageshow',function(event, ui){
+    $('#query').bind('change', function(e){
+        $('#search_results').empty();
+        if ($('#query')[0].value === '') {
+            return;
         }
-        $("ul#details-list").empty().append(li).listview("refresh");
-    });
+        $.mobile.showPageLoadingMsg();
 
-    $('#searchpage').live('pageshow',function(event, ui){
-        $('#query').bind('change', function(e){
-            $('#search_results').empty();
-            if ($('#query')[0].value === '') {
-                return;
-            }
-            $.mobile.showPageLoadingMsg();
-
-            // Prevent form send
-            e.preventDefault();
-
-            var searchUrl = 'http://ws.geonames.org/searchJSON?featureClass=P&maxRows=10';
-            searchUrl += '&name_startsWith=' + $('#query')[0].value;
-            $.getJSON(searchUrl, function(data) {
-                $.each(data.geonames, function() {
-                    var place = this;
-                    $('<li>')
-                        .hide()
-                        .append($('<h2 />', {
-                            text: place.name
-                        }))
-                        .append($('<p />', {
-                            html: '<b>' + place.countryName + '</b> ' + place.fcodeName
-                        }))
-                        .appendTo('#search_results')
-                        .click(function() {
-                            $.mobile.changePage('#mappage');
-                            var lonlat = new OpenLayers.LonLat(place.lng, place.lat);
-                            map.setCenter(lonlat.transform(gg, sm), 10);
-                        })
-                        .show();
-                });
-                $('#search_results').listview('refresh');
-                $.mobile.hidePageLoadingMsg();
+        // Prevent form send
+        e.preventDefault();
+
+        var searchUrl = 'http://ws.geonames.org/searchJSON?featureClass=P&maxRows=10';
+        searchUrl += '&name_startsWith=' + $('#query')[0].value;
+        $.getJSON(searchUrl, function(data) {
+            $.each(data.geonames, function() {
+                var place = this;
+                $('<li>')
+                    .hide()
+                    .append($('<h2 />', {
+                        text: place.name
+                    }))
+                    .append($('<p />', {
+                        html: '<b>' + place.countryName + '</b> ' + place.fcodeName
+                    }))
+                    .appendTo('#search_results')
+                    .click(function() {
+                        $.mobile.changePage('#mappage');
+                        var lonlat = new OpenLayers.LonLat(place.lng, place.lat);
+                        map.setCenter(lonlat.transform(gg, sm), 10);
+                    })
+                    .show();
             });
+            $('#search_results').listview('refresh');
+            $.mobile.hidePageLoadingMsg();
         });
-        // only listen to the first event triggered
-        $('#searchpage').die('pageshow', arguments.callee);
     });
-
+    // only listen to the first event triggered
+    $('#searchpage').die('pageshow', arguments.callee);
 });
 
+
 function initLayerList() {
     $('#layerspage').page();
     $('<li>', {
diff --git a/examples/mobile-wmts-vienna.css b/examples/mobile-wmts-vienna.css
index 741cd6d..605932a 100644
--- a/examples/mobile-wmts-vienna.css
+++ b/examples/mobile-wmts-vienna.css
@@ -5,16 +5,55 @@ html, body, #map {
 }
 #map {
     cursor: move;
+    background-color: #CCCCCC;
+    /* no highlighting of the map area when tapping the map on touch devices */
+    -webkit-tap-highlight-color: transparent;
 }
 #title, #tags, #shortdesc {
     display: none;
 }
+div.olMapViewport {
+    -ms-touch-action: none;
+}
+
+/* Turn on GPU support where available */
 .olTileImage {
+    -webkit-transform: translateZ(0);
+    -moz-transform: translateZ(0);
+    -o-transform: translateZ(0);
+    -ms-transform: translateZ(0);
+    transform: translateZ(0);
+    -webkit-backface-visibility: hidden;
+    -moz-backface-visibility: hidden;
+    -ms-backface-visibility: hidden;
+    backface-visibility: hidden;
+    -webkit-perspective: 1000;
+    -moz-perspective: 1000;
+    -ms-perspective: 1000;
+    perspective: 1000;
+}
+
+/* Tile fade animation */
+.olLayerGrid .olTileImage {
     -webkit-transition: opacity 0.2s linear;
     -moz-transition: opacity 0.2s linear;
     -o-transition: opacity 0.2s linear;
     transition: opacity 0.2s linear;
 }
+
+/* Zoom Box */
+.olHandlerBoxZoomBox {
+    border: 2px solid red;
+    position: absolute;
+    background-color: white;
+    opacity: 0.50;
+    font-size: 1px;
+    filter: alpha(opacity=50);
+}
+.olDrawBox {
+    cursor: crosshair;
+}
+
 div.olControlAttribution {
     position: absolute;
     font-size: 10px;
@@ -163,4 +202,4 @@ div.layerPanel div.mapButtonItemActive:after {
 div.layerPanel div.mapButtonItemInactive,
 div.layerPanel div.mapButtonItemActive {
     margin-left: 1px;
-}
\ No newline at end of file
+}
diff --git a/examples/mobile-wmts-vienna.js b/examples/mobile-wmts-vienna.js
index 4257f74..45ebecb 100644
--- a/examples/mobile-wmts-vienna.js
+++ b/examples/mobile-wmts-vienna.js
@@ -46,49 +46,53 @@ var map;
     
     // Geolocate control for the Locate button - the locationupdated handler
     // draws a cross at the location and a circle showing the accuracy radius.
-    zoomPanel.addControls([
-        new OpenLayers.Control.Geolocate({
-            type: OpenLayers.Control.TYPE_TOGGLE,
-            geolocationOptions: {
-                enableHighAccuracy: false,
-                maximumAge: 0,
-                timeout: 7000
+    var geolocate = new OpenLayers.Control.Geolocate({
+        type: OpenLayers.Control.TYPE_TOGGLE,
+        bind: false,
+        watch: true,
+        geolocationOptions: {
+            enableHighAccuracy: false,
+            maximumAge: 0,
+            timeout: 7000
+        },
+        eventListeners: {
+            activate: function() {
+                map.addLayer(vector);
             },
-            eventListeners: {
-                activate: function() {
-                    map.addLayer(vector);
-                },
-                deactivate: function() {
-                    map.removeLayer(vector);
-                    vector.removeAllFeatures();
-                },
-                locationupdated: function(e) {
-                    vector.removeAllFeatures();
-                    vector.addFeatures([
-                        new OpenLayers.Feature.Vector(e.point, null, {
-                            graphicName: 'cross',
+            deactivate: function() {
+                map.removeLayer(vector);
+                vector.removeAllFeatures();
+            },
+            locationupdated: function(e) {
+                vector.removeAllFeatures();
+                vector.addFeatures([
+                    new OpenLayers.Feature.Vector(e.point, null, {
+                        graphicName: 'cross',
+                        strokeColor: '#f00',
+                        strokeWidth: 2,
+                        fillOpacity: 0,
+                        pointRadius: 10
+                    }),
+                    new OpenLayers.Feature.Vector(
+                        OpenLayers.Geometry.Polygon.createRegularPolygon(
+                            new OpenLayers.Geometry.Point(e.point.x, e.point.y),
+                            e.position.coords.accuracy / 2, 50, 0
+                        ), null, {
+                            fillOpacity: 0.1,
+                            fillColor: '#000',
                             strokeColor: '#f00',
-                            strokeWidth: 2,
-                            fillOpacity: 0,
-                            pointRadius: 10
-                        }),
-                        new OpenLayers.Feature.Vector(
-                            OpenLayers.Geometry.Polygon.createRegularPolygon(
-                                new OpenLayers.Geometry.Point(e.point.x, e.point.y),
-                                e.position.coords.accuracy / 2, 50, 0
-                            ), null, {
-                                fillOpacity: 0.1,
-                                fillColor: '#000',
-                                strokeColor: '#f00',
-                                strokeOpacity: 0.6
-                            }
-                        )
-                    ]);
-                    map.zoomToExtent(vector.getDataExtent());
-                }
+                            strokeOpacity: 0.6
+                        }
+                    )
+                ]);
+                map.zoomToExtent(vector.getDataExtent());
             }
-        })
-    ]);
+        }
+    });
+    zoomPanel.addControls([geolocate]);
+
+    // Fallback layer when outside Vienna
+    var osm = new OpenLayers.Layer.OSM();
 
     // Map with navigation controls optimized for touch devices
     map = new OpenLayers.Map({
@@ -96,22 +100,10 @@ var map;
         theme: null,
         projection: "EPSG:3857",
         units: "m",
-        maxExtent: [-20037508.34, -20037508.34, 20037508.34, 20037508.34],
-        maxResolution: 156543.0339,
-        numZoomLevels: 20,
+        maxResolution: 38.21851413574219,
+        numZoomLevels: 8,
         controls: [
-            new OpenLayers.Control.Navigation({
-                mouseWheelOptions: {
-                    cumulative: false,
-                    interval: 20
-                },
-                dragPanOptions: {
-                    enableKinetic: {
-                        deceleration: 0.02
-                    }
-                },
-                zoomBoxEnabled: false
-            }),
+            new OpenLayers.Control.Navigation(),
             new OpenLayers.Control.Attribution(),
             zoomPanel,
             layerPanel
@@ -121,6 +113,15 @@ var map;
                 // update anchor for permalinks
                 var ctr = map.getCenter();
                 window.location.hash = "x="+ctr.lon+"&y="+ctr.lat+"&z="+map.getZoom();
+                // switch to OSM when outside Vienna
+                if (!map.getExtent().intersectsBounds(fmzk.tileFullExtent)) {
+                    if (map.baseLayer !== osm) {
+                        map.addLayer(osm);
+                        map.setBaseLayer(osm);
+                    }
+                } else if (map.baseLayer === osm) {
+                    map.removeLayer(osm);
+                }
             }
         }
     });
@@ -130,6 +131,14 @@ var map;
     // Vector layer for the location cross and circle
     var vector = new OpenLayers.Layer.Vector("Vector Layer");
 
+    // Defaults for the WMTS layers
+    var defaults = {
+        zoomOffset: 12,
+        requestEncoding: "REST",
+        matrixSet: "google3857",
+        attribution: 'Datenquelle: Stadt Wien - <a href="http://data.wien.gv.at">data.wien.gv.at</a>'
+    };
+
     // The WMTS layers we're going to add
     var fmzk, aerial, labels;
     
@@ -149,21 +158,16 @@ var map;
         url: "http://maps.wien.gv.at/wmts/1.0.0/WMTSCapabilities.xml",
         success: function(request) {
             var format = new OpenLayers.Format.WMTSCapabilities();
-            var defaults = {
-                requestEncoding: "REST",
-                matrixSet: "google3857",
-                attribution: 'Datenquelle: Stadt Wien - <a href="http://data.wien.gv.at">data.wien.gv.at</a>'
-            };
             var doc = request.responseText,
                 caps = format.read(doc);
             fmzk = format.createLayer(caps, OpenLayers.Util.applyDefaults(
-                {layer:"fmzk", requestEncoding:"REST", transitionEffect:"resize"}, defaults
+                {layer:"fmzk"}, defaults
             ));
             aerial = format.createLayer(caps, OpenLayers.Util.applyDefaults(
-                {layer:"lb", requestEncoding:"REST", transitionEffect:"resize"}, defaults
+                {layer:"lb"}, defaults
             ));
             labels = format.createLayer(caps, OpenLayers.Util.applyDefaults(
-                {layer:"beschriftung", requestEncoding:"REST", isBaseLayer: false},
+                {layer:"beschriftung", isBaseLayer: false, transitionEffect: 'map-resize'},
                 defaults
             ));
             map.addLayers([fmzk, aerial, labels]);
@@ -177,32 +181,43 @@ var map;
     // and create layers" block above.
     /*
     var extent = new OpenLayers.Bounds(1799448.394855, 6124949.74777, 1848250.442089, 6162571.828177);
-    var defaults = {
-        requestEncoding: "REST",
-        matrixSet: "google3857",
-        tileFullExtent: extent,
-        attribution: 'Datenquelle: Stadt Wien - <a href="http://data.wien.gv.at">data.wien.gv.at</a>'
-    };
+    defaults.tileFullExtent = extent;
     fmzk = new OpenLayers.Layer.WMTS(OpenLayers.Util.applyDefaults({
-        url: "http://www.wien.gv.at/wmts/fmzk/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+        url: [
+            "http://maps.wien.gv.at/wmts/fmzk/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps1.wien.gv.at/wmts/fmzk/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps2.wien.gv.at/wmts/fmzk/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps3.wien.gv.at/wmts/fmzk/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps4.wien.gv.at/wmts/fmzk/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg"
+        ],
         layer: "fmzk",
-        style: "pastell",
-        transitionEffect: "resize"
+        style: "pastell"
     },
     defaults));
     aerial = new OpenLayers.Layer.WMTS(OpenLayers.Util.applyDefaults({
-        url: "http://www.wien.gv.at/wmts/lb/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+        url: [
+            "http://maps.wien.gv.at/wmts/lb/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps1.wien.gv.at/wmts/lb/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps2.wien.gv.at/wmts/lb/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps3.wien.gv.at/wmts/lb/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg",
+            "http://maps4.wien.gv.at/wmts/lb/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.jpeg"
+        ],
         layer: "lb",
-        style: "farbe",
-        transitionEffect: "resize"
+        style: "farbe"
     },
     defaults));
     labels = new OpenLayers.Layer.WMTS(OpenLayers.Util.applyDefaults({
-        url: "http://www.wien.gv.at/wmts/beschriftung/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png",
+        url: [
+            "http://maps.wien.gv.at/wmts/beschriftung/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png",
+            "http://maps1.wien.gv.at/wmts/beschriftung/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png",
+            "http://maps2.wien.gv.at/wmts/beschriftung/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png",
+            "http://maps3.wien.gv.at/wmts/beschriftung/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png",
+            "http://maps4.wien.gv.at/wmts/beschriftung/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png"
+        ],
         layer: "beschriftung",
         style: "normal",
-        transitionEffect: null,
-        isBaseLayer: false
+        isBaseLayer: false,
+        transitionEffect: 'map-resize'
     },
     defaults));
     map.addLayers([fmzk, aerial, labels]);
diff --git a/examples/mouse-position.html b/examples/mouse-position.html
index 4e78e9b..924d3bc 100644
--- a/examples/mouse-position.html
+++ b/examples/mouse-position.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml" debug="true">
+<html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
@@ -7,41 +7,61 @@
     <title>MousePosition Control</title>
     <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script src="../lib/OpenLayers.js"></script>
+    <script src="../lib/OpenLayers.js" type="text/javascript"></script>
     <script type="text/javascript">
         var map;
         function init(){
             var map = new OpenLayers.Map('map');
 
-            map.addControl(new OpenLayers.Control.MousePosition());
+            map.addControl(
+                new OpenLayers.Control.MousePosition({
+                    prefix: '<a target="_blank" ' +
+                        'href="http://spatialreference.org/ref/epsg/4326/">' +
+                        'EPSG:4326</a> coordinates: ',
+                    separator: ' | ',
+                    numDigits: 2,
+                    emptyString: 'Mouse is not over map.'
+                })
+            );
 
-            var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
+            var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
                 "http://vmap0.tiles.osgeo.org/wms/vmap0",
                 {layers: 'basic'} );
 
             map.addLayers([ol_wms]);
-            if (!map.getCenter()) map.zoomToMaxExtent();
+            if (!map.getCenter()) {
+                map.zoomToMaxExtent();
+            }
             
-            map.events.register("mousemove", map, function(e) { 
+            map.events.register("mousemove", map, function(e) {
                 var position = this.events.getMousePosition(e);
                 OpenLayers.Util.getElement("coords").innerHTML = position;
             });
         }
     </script>
   </head>
-  <body onload="init()">
+  <body onload="init();">
     <h1 id="title">MousePosition Control</h1>
     <div id="tags">
-        coordinate
+      coordinate
     </div>
     <p id="shortdesc">
       Use the MousePosition Control to display the coordinates of the cursor
       inside or outside the map div.
     </p>  
     <div id="map" class="smallmap"></div>
-    <div id="coords"></div>
-    <p>Moving your mouse to the upper left corner of this map should return
-    'x=0,y=0' -- in the past, it didn't in IE. If it returns 2,2, consider it a
-    bug, and report it.</p> 
+    <div id="coords" style="height: 1.5em;"></div>
+    <p>
+      This example also shows how to use the the "prefix", "separator" and
+      "numDigits" options to customize the output of the MousePosition-Control.
+      By also setting the "emptyString"-property, the contents of the controls
+      element are resetted to the given string when the mouse isn't above the
+      map.
+    </p>
+    <p>
+      Moving your mouse to the upper left corner of this map should return
+      'x=0,y=0' (pixel coordinates) -- in the past, it didn't in IE. If it
+      returns 'x=2,y=2', consider it a bug, and report it.
+    </p>
   </body>
 </html>
diff --git a/examples/ordering.html b/examples/ordering.html
index f6fd1f4..cb15d8e 100644
--- a/examples/ordering.html
+++ b/examples/ordering.html
@@ -73,7 +73,7 @@
             // from bottom to top so as to quickly signal whether or not y-ordering is working.
             while (bottom.y > top.y) {
                 bottom.y -= POINT_DISTANCE;
-                var lonLat = map.getLonLatFromViewPortPx(bottom);
+                var lonLat = map.getLonLatFromPixel(bottom);
                 orderingFeatures.push(
                     new OpenLayers.Feature.Vector(
                         new OpenLayers.Geometry.Point(lonLat.lon, lonLat.lat)
@@ -89,7 +89,7 @@
             var indexFeatures = [];
             var useFirst = true;
             while (left.x <= right.x) {
-                var lonLat = map.getLonLatFromViewPortPx(left);
+                var lonLat = map.getLonLatFromPixel(left);
                 var point = new OpenLayers.Feature.Vector(
                     new OpenLayers.Geometry.Point(lonLat.lon, lonLat.lat)
                 );
@@ -147,8 +147,8 @@
             // and succomb to y-ordering.
             var orderingFeatures = [];
             while (bottom.y > top.y && left.x < right.x) {
-                var bottomLonLat = map.getLonLatFromViewPortPx(bottom);
-                var leftLonLat = map.getLonLatFromViewPortPx(left);
+                var bottomLonLat = map.getLonLatFromPixel(bottom);
+                var leftLonLat = map.getLonLatFromPixel(left);
                 orderingFeatures.push(
                     new OpenLayers.Feature.Vector(
                         new OpenLayers.Geometry.Point(leftLonLat.lon, bottomLonLat.lat),
diff --git a/examples/osm-google.html b/examples/osm-google.html
index 066dadc..e1ee6d8 100644
--- a/examples/osm-google.html
+++ b/examples/osm-google.html
@@ -6,7 +6,6 @@
     <meta name="apple-mobile-web-app-capable" content="yes">
         <title>OpenLayers OSM and Google Example</title>
         <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
-        <link rel="stylesheet" href="../theme/default/google.css" type="text/css">
         <link rel="stylesheet" href="style.css" type="text/css">
         <script src="http://maps.google.com/maps/api/js?v=3&sensor=false"></script>
         <script src="../lib/OpenLayers.js"></script>
diff --git a/examples/osm-google.html b/examples/osm-marker-popup.html
similarity index 54%
copy from examples/osm-google.html
copy to examples/osm-marker-popup.html
index 066dadc..8744ec8 100644
--- a/examples/osm-google.html
+++ b/examples/osm-marker-popup.html
@@ -6,27 +6,26 @@
     <meta name="apple-mobile-web-app-capable" content="yes">
         <title>OpenLayers OSM and Google Example</title>
         <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
-        <link rel="stylesheet" href="../theme/default/google.css" type="text/css">
         <link rel="stylesheet" href="style.css" type="text/css">
-        <script src="http://maps.google.com/maps/api/js?v=3&sensor=false"></script>
         <script src="../lib/OpenLayers.js"></script>
-        <script src="osm-google.js"></script>
+        <script src="osm-marker-popup.js"></script>
     </head>
     <body onload="init()">
-        <h1 id="title">OSM and Google Together</h1>
+        <h1 id="title">OSM with Marker and Popup</h1>
         <p id="shortdesc">
-            Demonstrate use of an OSM layer and a Google layer as base layers.
+            Demonstrate use of an OSM layer with a marker and a popup.
         </p>
         <div id="tags">
-            openstreetmap google light
+            openstreetmap osm marker popup
         </div>
         <div id="map" class="smallmap"></div>
         <div id="docs">
             <p>
-                The Google(v3) layer and the OSM are both in the same projection
-                - spherical mercator - and can be used on a map together.
-                See the <a href="osm-google.js" target="_blank">
-                osm-google.js source</a> to see how this is done.
+                A common use case for OpenLayers is to display a marker at a
+                location on the map, and add some information in a popup. It
+                is also easy to add a tooltip with a short description.
+                See the <a href="osm-marker-popup.js" target="_blank">
+                osm-marker-popup.js source</a> to see how this is done.
             </p>
         </div>
     </body>
diff --git a/examples/osm-marker-popup.js b/examples/osm-marker-popup.js
new file mode 100644
index 0000000..e8f39b5
--- /dev/null
+++ b/examples/osm-marker-popup.js
@@ -0,0 +1,39 @@
+var map;
+function init() {
+    
+    // The overlay layer for our marker, with a simple diamond as symbol
+    var overlay = new OpenLayers.Layer.Vector('Overlay', {
+        styleMap: new OpenLayers.StyleMap({
+            externalGraphic: '../img/marker.png',
+            graphicWidth: 20, graphicHeight: 24, graphicYOffset: -24,
+            title: '${tooltip}'
+        })
+    });
+
+    // The location of our marker and popup. We usually think in geographic
+    // coordinates ('EPSG:4326'), but the map is projected ('EPSG:3857').
+    var myLocation = new OpenLayers.Geometry.Point(10.2, 48.9)
+        .transform('EPSG:4326', 'EPSG:3857');
+
+    // We add the marker with a tooltip text to the overlay
+    overlay.addFeatures([
+        new OpenLayers.Feature.Vector(myLocation, {tooltip: 'OpenLayers'})
+    ]);
+
+    // A popup with some information about our location
+    var popup = new OpenLayers.Popup.FramedCloud("Popup", 
+        myLocation.getBounds().getCenterLonLat(), null,
+        '<a target="_blank" href="http://openlayers.org/">We</a> ' +
+        'could be here.<br>Or elsewhere.', null,
+        true // <-- true if we want a close (X) button, false otherwise
+    );
+
+    // Finally we create the map
+    map = new OpenLayers.Map({
+        div: "map", projection: "EPSG:3857",
+        layers: [new OpenLayers.Layer.OSM(), overlay],
+        center: myLocation.getBounds().getCenterLonLat(), zoom: 15
+    });
+    // and add the popup to it.
+    map.addPopup(popup);
+}
diff --git a/examples/overviewmap.html b/examples/overviewmap.html
index 165c987..5a8cc3f 100644
--- a/examples/overviewmap.html
+++ b/examples/overviewmap.html
@@ -80,7 +80,9 @@
         
         // create an overview map control with the default options
         var overview1 = new OpenLayers.Control.OverviewMap({
-            maximized: true
+            maximized: true,
+            maximizeTitle: 'Show the overview map',
+            minimizeTitle: 'Hide the overview map'
         });
         map1.addControl(overview1);
         
diff --git a/examples/polar-projections.html b/examples/polar-projections.html
new file mode 100644
index 0000000..de51cb0
--- /dev/null
+++ b/examples/polar-projections.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+        <meta name="apple-mobile-web-app-capable" content="yes">
+        <title>Switch between polar projections</title>
+        <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+        <link rel="stylesheet" href="style.css" type="text/css">
+        <script type="text/javascript" src="http://svn.osgeo.org/metacrs/proj4js/trunk/lib/proj4js-compressed.js"></script>
+        <script type="text/javascript" src="http://spatialreference.org/ref/epsg/3574/proj4js/"></script>
+        <script type="text/javascript" src="http://spatialreference.org/ref/epsg/3576/proj4js/"></script>
+        <script type="text/javascript" src="http://spatialreference.org/ref/epsg/3571/proj4js/"></script>
+        <script type="text/javascript" src="http://spatialreference.org/ref/epsg/3573/proj4js/"></script>
+        <script type="text/javascript" src="../lib/OpenLayers.js"></script>
+        <script type="text/javascript" src="polar-projections.js"></script>
+    </head>
+    <body onload="init()">
+      <h1 id="title">Polar Projections WMS Example</h1>
+
+      <div id="tags">
+          switch projections polar
+      </div>
+
+      <div id="shortdesc">Switch between different projections</div>
+
+      <div id="map" class="smallmap" style="height:512px"></div>
+      <button id='epsg3574'>EPSG:3574</button>
+      <button id='epsg3576'>EPSG:3576</button>
+      <button id='epsg3571'>EPSG:3571</button>
+      <button id='epsg3573'>EPSG:3573</button>
+
+      <div id="docs">
+          <p>This example shows how to switch between different projections,
+              maintaining the center and resolution.</p>
+          <p>Click the buttons above to try it, and see
+              <a href='polar-projections.js'>polar-projections.js</a> for the
+              source code.</p>
+      </div>
+    </body>
+</html>
diff --git a/examples/polar-projections.js b/examples/polar-projections.js
new file mode 100644
index 0000000..ac717fb
--- /dev/null
+++ b/examples/polar-projections.js
@@ -0,0 +1,84 @@
+var map, layer, overlay;
+
+var projectionOptions = {
+    'EPSG:3574': {
+        projection: new OpenLayers.Projection('EPSG:3574'),
+        units: 'm',
+        maxExtent: new OpenLayers.Bounds(-5505054, -5505054, 5505054, 5505054),
+        maxResolution: 5505054 / 128,
+        numZoomLevels: 18
+    },
+    'EPSG:3576': {
+        projection: new OpenLayers.Projection('EPSG:3576'),
+        units: 'm',
+        maxExtent: new OpenLayers.Bounds(-5505054, -5505054, 5505054, 5505054),
+        maxResolution: 5505054 / 128,
+        numZoomLevels: 18
+    },
+    'EPSG:3571': {
+        projection: new OpenLayers.Projection('EPSG:3571'),
+        units: 'm',
+        maxExtent: new OpenLayers.Bounds(-5505054, -5505054, 5505054, 5505054),
+        maxResolution: 5505054 / 128,
+        numZoomLevels: 18
+    },
+    'EPSG:3573': {
+        projection: new OpenLayers.Projection('EPSG:3573'),
+        units: 'm',
+        maxExtent: new OpenLayers.Bounds(-5505054, -5505054, 5505054, 5505054),
+        maxResolution: 5505054 / 128,
+        numZoomLevels: 18
+    }
+};
+
+function setProjection() {
+    projCode = this.innerHTML;
+    var oldExtent = map.getExtent();
+    var oldCenter = map.getCenter();
+    var oldProjection = map.getProjectionObject();
+    
+    // map projection is controlled by the base layer
+    map.baseLayer.addOptions(projectionOptions[projCode]);
+    
+    // with the base layer updated, the map has the new projection now
+    var newProjection = map.getProjectionObject();
+    
+    // transform the center of the old projection, not the extent
+    map.setCenter(
+        oldCenter.transform(oldProjection, newProjection,
+        map.getZoomForExtent(oldExtent.transform(oldProjection, newProjection))
+    ));
+    
+    for (var i=map.layers.length-1; i>=0; --i) {
+        // update grid settings
+        map.layers[i].addOptions(projectionOptions[projCode]);
+        // redraw layer - just in case center and zoom are the same in old and
+        // new projection
+        map.layers[i].redraw();
+    }
+}
+
+function init() {
+    map = new OpenLayers.Map('map');
+    layer = new OpenLayers.Layer.WMS(
+        'world',
+        'http://v2.suite.opengeo.org/geoserver/wms',
+        {layers: 'world', version: '1.1.1'},
+        projectionOptions['EPSG:3574']
+    );
+    overlay = new OpenLayers.Layer.WMS(
+        'world',
+        'http://v2.suite.opengeo.org/geoserver/wms',
+        {transparent: 'true', layers: 'world:borders', styles: 'line'},
+        projectionOptions['EPSG:3574']
+    );
+    overlay.isBaseLayer = false;
+    map.addLayers([layer, overlay]);
+    map.zoomToMaxExtent();
+    
+    // add behaviour to dom elements
+    document.getElementById('epsg3574').onclick = setProjection;
+    document.getElementById('epsg3576').onclick = setProjection;
+    document.getElementById('epsg3571').onclick = setProjection;
+    document.getElementById('epsg3573').onclick = setProjection;
+}
diff --git a/examples/proxy.cgi b/examples/proxy.cgi
index 4358e2c..1d2818f 100755
--- a/examples/proxy.cgi
+++ b/examples/proxy.cgi
@@ -20,7 +20,7 @@ allowedHosts = ['www.openlayers.org', 'openlayers.org',
                 'prototype.openmnnd.org', 'geo.openplans.org',
                 'sigma.openplans.org', 'demo.opengeo.org',
                 'www.openstreetmap.org', 'sample.azavea.com',
-                'v2.suite.opengeo.org', 'v-swe.uni-muenster.de:8080', 
+                'v2.suite.opengeo.org', 'v-swe.uni-muenster.de:8080',
                 'vmap0.tiles.osgeo.org', 'www.openrouteservice.org',
                 'maps.wien.gv.at']
 
diff --git a/examples/select-feature.html b/examples/select-feature.html
index 00325a4..fe5243e 100644
--- a/examples/select-feature.html
+++ b/examples/select-feature.html
@@ -15,6 +15,7 @@
     <script src="../lib/OpenLayers.js"></script>
     <script type="text/javascript">
         var map, drawControls;
+        
         OpenLayers.Feature.Vector.style['default']['strokeWidth'] = '2';
         function init(){
             map = new OpenLayers.Map('map');
@@ -33,10 +34,10 @@
             });
             vectors.events.on({
                 'featureselected': function(feature) {
-                    $('counter').innerHTML = this.selectedFeatures.length;
+                    document.getElementById('counter').innerHTML = this.selectedFeatures.length;
                 },
                 'featureunselected': function(feature) {
-                    $('counter').innerHTML = this.selectedFeatures.length;
+                    document.getElementById('counter').innerHTML = this.selectedFeatures.length;
                 }
             });
 
diff --git a/examples/snap-split.html b/examples/snap-split.html
index 95b9fa3..13306cc 100644
--- a/examples/snap-split.html
+++ b/examples/snap-split.html
@@ -35,13 +35,12 @@
     <script type="text/javascript">
 
         OpenLayers.Feature.Vector.style['default']['strokeWidth'] = '2';
-
+        
         function init() {
             initMap();
             initUI();
         }
 
-
         var map, draw, modify, snap, split, vectors;
         function initMap() {
 
@@ -185,15 +184,15 @@
          */
         function initUI() {
             // add behavior to snap elements
-            var snapCheck = $("snap_toggle");
+            var snapCheck = document.getElementById("snap_toggle");
             snapCheck.checked = true;
             snapCheck.onclick = function() {
                 if(snapCheck.checked) {
                     snap.activate();
-                    $("snap_options").style.display = "block";
+                    document.getElementById("snap_options").style.display = "block";
                 } else {
                     snap.deactivate();
-                    $("snap_options").style.display = "none";
+                    document.getElementById("snap_options").style.display = "none";
                 }
             };
             var target, type, tog, tol;
@@ -201,12 +200,12 @@
             var target = snap.targets[0];
             for(var j=0; j<types.length; ++j) {
                 type = types[j];
-                tog = $("target_" + type);
+                tog = document.getElementById("target_" + type);
                 tog.checked = target[type];
                 tog.onclick = (function(tog, type, target) {
                     return function() {target[type] = tog.checked;}
                 })(tog, type, target);
-                tol = $("target_" + type + "Tolerance");
+                tol = document.getElementById("target_" + type + "Tolerance");
                 tol.value = target[type + "Tolerance"];
                 tol.onchange = (function(tol, type, target) {
                     return function() {
@@ -216,24 +215,24 @@
             }
 
             // add behavior to split elements
-            var splitCheck = $("split_toggle");
+            var splitCheck = document.getElementById("split_toggle");
             splitCheck.checked = true;
             splitCheck.onclick = function() {
                 if(splitCheck.checked) {
                     split.activate();
-                    $("split_options").style.display = "block";
+                    document.getElementById("split_options").style.display = "block";
                 } else {
                     split.deactivate();
-                    $("split_options").style.display = "none";
+                    document.getElementById("split_options").style.display = "none";
                 }
             };
-            var edgeCheck = $("edge_toggle");
+            var edgeCheck = document.getElementById("edge_toggle");
             edgeCheck.checked = split.edge;
             edgeCheck.onclick = function() {
                 split.edge = edgeCheck.checked;
             };
             
-            $("clear").onclick = function() {
+            document.getElementById("clear").onclick = function() {
                 modify.deactivate();
                 vectors.destroyFeatures();
             };
diff --git a/examples/snapping.html b/examples/snapping.html
index 6c735fe..944b4c2 100644
--- a/examples/snapping.html
+++ b/examples/snapping.html
@@ -33,7 +33,7 @@
     <script src="../lib/OpenLayers.js"></script>
     <script type="text/javascript">
         OpenLayers.Feature.Vector.style['default']['strokeWidth'] = '2';
-
+        
         function init() {
             initMap();
             initUI();
@@ -194,7 +194,7 @@
          * property values.
          */
         function initUI() {
-            var check = $("snapping");
+            var check = document.getElementById("snapping");
             check.checked = true;
             check.onclick = function() {
                 if(check.checked) {
@@ -204,7 +204,7 @@
                 }
             };
             
-            var sel = $("editable");
+            var sel = document.getElementById("editable");
             sel.value = "poly";
             sel.onchange = function() {
                 updateEditable(sel.value);
@@ -216,12 +216,12 @@
                 target = snap.targets[i];
                 for(var j=0; j<types.length; ++j) {
                     type = types[j];
-                    tog = $(i + "_" + type);
+                    tog = document.getElementById(i + "_" + type);
                     tog.checked = target[type];
                     tog.onclick = (function(tog, type, target) {
                         return function() {target[type] = tog.checked;}
                     })(tog, type, target);
-                    tol = $(i + "_" + type + "Tolerance");
+                    tol = document.getElementById(i + "_" + type + "Tolerance");
                     tol.value = target[type + "Tolerance"];
                     tol.onchange = (function(tol, type, target) {
                         return function() {
diff --git a/examples/spherical-mercator.html b/examples/spherical-mercator.html
index b283570..443ba3b 100644
--- a/examples/spherical-mercator.html
+++ b/examples/spherical-mercator.html
@@ -17,6 +17,10 @@
             right: inherit;
             width: 400px;
         }
+        /* conditionally position control differently for Google Maps */
+        .olForeignContainer div.olControlMousePosition {
+            bottom: 28px;
+        }
         #map {
             height: 512px;
         }
@@ -38,7 +42,12 @@
     </p>
     <div id="map" class="smallmap"></div>
 
-    <div id="docs"></div>
+    <div id="docs">
+        <p>Note that maps with Google layers are a special case, because we
+            cannot control the position of the attribution. To conditionally
+            position controls differently for Google layers, prepend the
+            css selector with <code>.olForeignContainer</code>.</p>
+    </div>
     <script type="text/javascript">
 
     var map = new OpenLayers.Map({
diff --git a/examples/strategy-cluster-extended.js b/examples/strategy-cluster-extended.js
index 70928c4..163cbf4 100644
--- a/examples/strategy-cluster-extended.js
+++ b/examples/strategy-cluster-extended.js
@@ -73,67 +73,67 @@ var map, vectorlayer, features, stylemap, select;
 
     // The function that gets called on feature selection: shows information 
     // about the feature/cluser in a div on the page 
-	var showInformation = function(evt){
+    var showInformation = function(evt){
         var feature = evt.feature;
-		var info = 'Last hovered feature:<br>';
-		if (feature.cluster) {
-			info += '  Cluster of ' + feature.attributes.count + ' features:';
-			var clazzes = {
-				'1': 0,
-				'2': 0,
-				'3': 0,
-				'4': 0
-			};
-			for (var i = 0; i < feature.attributes.count; i++) {
-				var feat = feature.cluster[i];
-				clazzes[feat.attributes.clazz]++;
-			}
-			for (var j=1; j<=4; j++) {
-				var plural_s = (clazzes[j] !== 1) ? 's' : '';
-				info += '<br>    • clazz ' + j + ': ' + clazzes[j] + ' feature' + plural_s;
-			}
-		} else {
-			info += '  Single feature of clazz = ' + feature.attributes.clazz;
-		}
-		$('info').innerHTML = info;
+        var info = 'Last hovered feature:<br>';
+        if (feature.cluster) {
+            info += '  Cluster of ' + feature.attributes.count + ' features:';
+            var clazzes = {
+                '1': 0,
+                '2': 0,
+                '3': 0,
+                '4': 0
+            };
+            for (var i = 0; i < feature.attributes.count; i++) {
+                var feat = feature.cluster[i];
+                clazzes[feat.attributes.clazz]++;
+            }
+            for (var j=1; j<=4; j++) {
+                var plural_s = (clazzes[j] !== 1) ? 's' : '';
+                info += '<br>    • clazz ' + j + ': ' + clazzes[j] + ' feature' + plural_s;
+            }
+        } else {
+            info += '  Single feature of clazz = ' + feature.attributes.clazz;
+        }
+        document.getElementById('info').innerHTML = info;
     };
 
-	// The function that gets called on feature selection. Shows information 
+    // The function that gets called on feature selection. Shows information 
     // about the number of "points" on the map.
-	var updateGeneralInformation = function() {
-		var info = 'Currently ' + vectorlayer.features.length + ' points are shown on the map.';
-		$('generalinfo').innerHTML = info;
-	};
-	
-	// instanciate the map
-	map = new OpenLayers.Map("map");
+    var updateGeneralInformation = function() {
+        var info = 'Currently ' + vectorlayer.features.length + ' points are shown on the map.';
+        document.getElementById('generalinfo').innerHTML = info;
+    };
+    
+    // instanciate the map
+    map = new OpenLayers.Map("map");
     
-	// background WMS
+    // background WMS
     var ol_wms = new OpenLayers.Layer.WMS("OpenLayers WMS", "http://vmap0.tiles.osgeo.org/wms/vmap0", {
         layers: "basic"
     });
     
-	// context to style the vectorlayer
+    // context to style the vectorlayer
     var context = {
         getColor: function(feature){
             var color = '#aaaaaa';
-			if (feature.attributes.clazz && feature.attributes.clazz === 4) {
-				color = '#ee0000';
-			} else if(feature.cluster) {
-				var onlyFour = true;
-				for (var i = 0; i < feature.cluster.length; i++) {
-					if (onlyFour && feature.cluster[i].attributes.clazz !== 4) {
-						onlyFour = false;
-					}
-				}
-				if (onlyFour === true) {
-					color = '#ee0000';
-				}
-			}
-			return color;
+            if (feature.attributes.clazz && feature.attributes.clazz === 4) {
+                color = '#ee0000';
+            } else if(feature.cluster) {
+                var onlyFour = true;
+                for (var i = 0; i < feature.cluster.length; i++) {
+                    if (onlyFour && feature.cluster[i].attributes.clazz !== 4) {
+                        onlyFour = false;
+                    }
+                }
+                if (onlyFour === true) {
+                    color = '#ee0000';
+                }
+            }
+            return color;
         }
     };
-	
+    
     // style the vectorlayer
     stylemap = new OpenLayers.StyleMap({
         'default': new OpenLayers.Style({
@@ -143,32 +143,32 @@ var map, vectorlayer, features, stylemap, select;
             strokeColor: "#666666",
             strokeWidth: 1,
             strokeOpacity: 1,
-			graphicZIndex: 1
+            graphicZIndex: 1
         }, {
             context: context
         }),
-		'select' : new OpenLayers.Style({
+        'select' : new OpenLayers.Style({
             pointRadius: 5,
             fillColor: "#ffff00",
             fillOpacity: 1,
             strokeColor: "#666666",
             strokeWidth: 1,
             strokeOpacity: 1,
-			graphicZIndex: 2
+            graphicZIndex: 2
         })
     });
     
     // the vectorlayer
     vectorlayer = new OpenLayers.Layer.Vector('Vectorlayer', {styleMap: stylemap, strategies: []});
     
-	// the select control
-	select = new OpenLayers.Control.SelectFeature(
+    // the select control
+    select = new OpenLayers.Control.SelectFeature(
         vectorlayer, {hover: true}
     );
     map.addControl(select);
     select.activate();
     vectorlayer.events.on({"featureselected": showInformation});
-	
+    
     map.addLayers([ol_wms, vectorlayer]);
     map.addControl(new OpenLayers.Control.LayerSwitcher());
     map.zoomToMaxExtent();
@@ -197,18 +197,18 @@ var map, vectorlayer, features, stylemap, select;
         switch(this.value) {
             case 'cluster':
                 // standard clustering
-				strategies.push(new OpenLayers.Strategy.Cluster());
+                strategies.push(new OpenLayers.Strategy.Cluster());
                 break;
             case 'attribute-cluster':
                 // use the custom class: only cluster features of the same clazz
-				strategies.push(new OpenLayers.Strategy.AttributeCluster({
+                strategies.push(new OpenLayers.Strategy.AttributeCluster({
                     attribute:'clazz'
                 }));
                 break;
             case 'rule-cluster':
                 // use the custom class: only cluster features that have a 
-				// clazz smaller than 4
-				strategies.push(new OpenLayers.Strategy.RuleCluster({
+                // clazz smaller than 4
+                strategies.push(new OpenLayers.Strategy.RuleCluster({
                     rule: new OpenLayers.Rule({
                         filter: new OpenLayers.Filter.Comparison({
                             type: OpenLayers.Filter.Comparison.LESS_THAN,
@@ -219,24 +219,24 @@ var map, vectorlayer, features, stylemap, select;
                 }));
                 break;
         }
-		// remove layer and control
+        // remove layer and control
         map.removeLayer(vectorlayer);
-		map.removeControl(select);
-		// rebuild layer
+        map.removeControl(select);
+        // rebuild layer
         vectorlayer = new OpenLayers.Layer.Vector('Vectorlayer', {styleMap: stylemap, strategies: strategies});
         map.addLayer( vectorlayer );
         vectorlayer.addFeatures(features);
         // rebuild select control
-		select = new OpenLayers.Control.SelectFeature(
-	        vectorlayer, {hover: true}
-	    );
-	    map.addControl(select);
-	    select.activate();
-	    vectorlayer.events.on({"featureselected": showInformation});
-		// update meta information
-		updateGeneralInformation();
+        select = new OpenLayers.Control.SelectFeature(
+            vectorlayer, {hover: true}
+        );
+        map.addControl(select);
+        select.activate();
+        vectorlayer.events.on({"featureselected": showInformation});
+        // update meta information
+        updateGeneralInformation();
     };
-	// bind the behviour to the radios
+    // bind the behviour to the radios
     var inputs = document.getElementsByTagName('input');
     for( var cnt = 0; cnt < inputs.length; cnt++) {
       var input = inputs[cnt];
diff --git a/examples/strategy-cluster-threshold.html b/examples/strategy-cluster-threshold.html
index 31c79ce..a47e08d 100644
--- a/examples/strategy-cluster-threshold.html
+++ b/examples/strategy-cluster-threshold.html
@@ -18,7 +18,6 @@
         </style>
         <script src="../lib/OpenLayers.js"></script>
         <script type="text/javascript">
-
             // create a semi-random grid of features to be clustered
             var dx = 3;
             var dy = 3;
@@ -38,10 +37,8 @@
             function init() {
                 map = new OpenLayers.Map('map');
                 var base = new OpenLayers.Layer.WMS("OpenLayers WMS", 
-                    ["http://t3.tilecache.osgeo.org/wms-c/Basic.py",
-                     "http://t2.tilecache.osgeo.org/wms-c/Basic.py",
-                     "http://t1.tilecache.osgeo.org/wms-c/Basic.py"], 
-                    {layers: 'satellite'}
+                     "http://vmap0.tiles.osgeo.org/wms/vmap0",
+                    {layers: 'basic'}
                 );
 
                 var style = new OpenLayers.Style({
@@ -90,24 +87,24 @@
                 map.setCenter(new OpenLayers.LonLat(0, 0), 2);
                 
                 reset();
-                $("reset").onclick = reset;
+                document.getElementById("reset").onclick = reset;
 
             }
             
             function reset() {
-                var distance = parseInt($("distance").value);
-                var threshold = parseInt($("threshold").value);
+                var distance = parseInt(document.getElementById("distance").value);
+                var threshold = parseInt(document.getElementById("threshold").value);
                 strategy.distance = distance || strategy.distance;
                 strategy.threshold = threshold || strategy.threshold;
-                $("distance").value = strategy.distance;
-                $("threshold").value = strategy.threshold || "null";
+                document.getElementById("distance").value = strategy.distance;
+                document.getElementById("threshold").value = strategy.threshold || "null";
                 clusters.removeFeatures(clusters.features);
                 clusters.addFeatures(features);
             }
             
             function display(event) {
                 var f = event.feature;
-                var el = $("output");
+                var el = document.getElementById("output");
                 if(f.cluster) {
                     el.innerHTML = "cluster of " + f.attributes.count;
                 } else {
diff --git a/examples/strategy-cluster.html b/examples/strategy-cluster.html
index e4ca7ce..d695f71 100644
--- a/examples/strategy-cluster.html
+++ b/examples/strategy-cluster.html
@@ -69,6 +69,7 @@
         <script src="Jugl.js"></script>
         <script src="animator.js"></script>
         <script type="text/javascript">
+        
             var map, template;
 
             /**
@@ -171,21 +172,21 @@
             
             function display(event) {
                 // clear previous photo list and create new one
-                $("photos").innerHTML = "";
+                document.getElementById("photos").innerHTML = "";
                 var node = template.process({
                     context: {features: event.feature.cluster},
                     clone: true,
-                    parent: $("photos")
+                    parent: document.getElementById("photos")
                 });
                 // set up forward/rewind
-                var forward = Animator.apply($("list"), ["start", "end"], {duration: 1500});
-                $("scroll-end").onmouseover = function() {forward.seekTo(1)};
-                $("scroll-end").onmouseout = function() {forward.seekTo(forward.state)};
-                $("scroll-start").onmouseover = function() {forward.seekTo(0)};
-                $("scroll-start").onmouseout = function() {forward.seekTo(forward.state)};
+                var forward = Animator.apply(document.getElementById("list"), ["start", "end"], {duration: 1500});
+                document.getElementById("scroll-end").onmouseover = function() {forward.seekTo(1)};
+                document.getElementById("scroll-end").onmouseout = function() {forward.seekTo(forward.state)};
+                document.getElementById("scroll-start").onmouseover = function() {forward.seekTo(0)};
+                document.getElementById("scroll-start").onmouseout = function() {forward.seekTo(forward.state)};
                 // set up photo zoom
                 for(var i=0; i<event.feature.cluster.length; ++i) {
-                    listen($("link-" + i), Animator.apply($("photo-" + i), ["thumb", "big"]));
+                    listen(document.getElementById("link-" + i), Animator.apply(document.getElementById("photo-" + i), ["thumb", "big"]));
                 }
             }
             
diff --git a/examples/stylemap.html b/examples/stylemap.html
index f3764af..b80961d 100644
--- a/examples/stylemap.html
+++ b/examples/stylemap.html
@@ -78,7 +78,7 @@
 
     <p id="shortdesc">
         Shows how to use a StyleMap to style features with rule based styling.
-        A style map references on or more OpenLayers.Style objects.  These
+        A style map references one or more OpenLayers.Style objects.  These
         OpenLayers.Style objects are collections of OpenLayers.Rule objects
         that determine how features are styled.  An OpenLayers.Rule object
         combines an OpenLayers.Filter object with a symbolizer.  A filter is used
diff --git a/examples/tilecache.html b/examples/tilecache.html
index cf9db61..82f3a55 100644
--- a/examples/tilecache.html
+++ b/examples/tilecache.html
@@ -11,7 +11,7 @@
     <script type="text/javascript">
         var map, layer;
         function init(){
-            map = new OpenLayers.Map( $('map'), {
+            map = new OpenLayers.Map( 'map', {
                 resolutions: [0.087890625, 0.0439453125, 0.02197265625, 0.010986328125]
             });
             layer = new OpenLayers.Layer.TileCache("TileCache Layer",
diff --git a/examples/using-proj4js.js b/examples/using-proj4js.js
index 85232fa..044b872 100644
--- a/examples/using-proj4js.js
+++ b/examples/using-proj4js.js
@@ -1,4 +1,5 @@
 var map, vector;
+
 function init(){
     map = new OpenLayers.Map('map', {
         projection: 'EPSG:31467',
@@ -7,16 +8,16 @@ function init(){
         numZoomLevels: 1,
         controls: [
             new OpenLayers.Control.Attribution({
-                div: $('attribution')
+                div: document.getElementById('attribution')
             }),
             new OpenLayers.Control.MousePosition({
-                div: $('mouse-position-31467'),
+                div: document.getElementById('mouse-position-31467'),
                 prefix: 'Coordinates: ',
                 suffix: ' (in <a href="http://spatialreference.org/ref/epsg/' 
                     + '31467/">EPSG:31467</a>)'
             }),
             new OpenLayers.Control.MousePosition({
-                div: $('mouse-position-4326'),
+                div: document.getElementById('mouse-position-4326'),
                 displayProjection: new OpenLayers.Projection('EPSG:4326'),
                 prefix: 'Coordinates: ',
                 suffix: ' (in <a href="http://spatialreference.org/ref/epsg/' 
@@ -59,7 +60,7 @@ function addVector(x, y, btn){
     
     status += '<br /><code class="emph">  ' 
         + geometry.toString() + '</code>.';
-    $('status').innerHTML = status;
+    document.getElementById('status').innerHTML = status;
     
     var feature = new OpenLayers.Feature.Vector(geometry, {}, {
         strokeColor: '#333333',
@@ -110,7 +111,7 @@ function addOutline(btn) {
         transformedFeature = new OpenLayers.Feature.Vector(geometry, {}, style);
     
     vector.addFeatures([transformedFeature]);
-    $('status').innerHTML = 'Transformed polygon';
+    document.getElementById('status').innerHTML = 'Transformed polygon';
     btn.disabled = true;
 }
 
@@ -124,8 +125,8 @@ function clearVectors(){
         'btnGermany'
     ];
     for (var i = 0, len = ids.length; i < len; i++) {
-        var elem = $(ids[i]);
+        var elem = document.getElementById(ids[i]);
         elem.disabled = false;
     }
-    $('status').innerHTML = '';
+    document.getElementById('status').innerHTML = '';
 }
diff --git a/examples/vector-features.html b/examples/vector-features.html
index 70fc34a..62fe8e9 100644
--- a/examples/vector-features.html
+++ b/examples/vector-features.html
@@ -49,7 +49,8 @@
                 strokeWidth: 3,
                 strokeDashstyle: "dashdot",
                 pointRadius: 6,
-                pointerEvents: "visiblePainted"
+                pointerEvents: "visiblePainted",
+                title: "this is a green line"
             };
 
             /*
@@ -70,8 +71,8 @@
             style_mark.graphicXOffset = 10; // default is -(style_mark.graphicWidth/2);
             style_mark.graphicYOffset = -style_mark.graphicHeight;
             style_mark.externalGraphic = "../img/marker.png";
-            // graphicTitle only works in Firefox and Internet Explorer
-            style_mark.graphicTitle = "this is a test tooltip";
+            // title only works in Firefox and Internet Explorer
+            style_mark.title = "this is a test tooltip";
 
             var vectorLayer = new OpenLayers.Layer.Vector("Simple Geometry", {
                 style: layer_style,
diff --git a/examples/vector-formats.html b/examples/vector-formats.html
index 97b51c7..2b45b54 100644
--- a/examples/vector-formats.html
+++ b/examples/vector-formats.html
@@ -87,8 +87,9 @@
                 gml3: new OpenLayers.Format.GML.v3(gmlOptionsIn),
                 kml: new OpenLayers.Format.KML(kmlOptionsIn),
                 atom: new OpenLayers.Format.Atom(in_options),
-                gpx: new OpenLayers.Format.GPX(in_options)
-              }, 
+                gpx: new OpenLayers.Format.GPX(in_options),
+                encoded_polyline: new OpenLayers.Format.EncodedPolyline(in_options)
+              },
               'out': {
                 wkt: new OpenLayers.Format.WKT(out_options),
                 geojson: new OpenLayers.Format.GeoJSON(out_options),
@@ -97,8 +98,9 @@
                 gml3: new OpenLayers.Format.GML.v3(gmlOptionsOut),
                 kml: new OpenLayers.Format.KML(out_options),
                 atom: new OpenLayers.Format.Atom(out_options),
-                gpx: new OpenLayers.Format.GPX(out_options)
-              } 
+                gpx: new OpenLayers.Format.GPX(out_options),
+                encoded_polyline: new OpenLayers.Format.EncodedPolyline(out_options)
+              }
             };
         }
         function init(){
@@ -202,6 +204,7 @@
                 <option value="gml3">GML (v3)</option>
                 <option value="wkt">Well-Known Text (WKT)</option>
                 <option value="gpx">GPX</option>
+                <option value="encoded_polyline">Encoded Polyline</option>
             </select>
              
             <label for="prettyPrint">Pretty print</label>
diff --git a/examples/wfs-states.html b/examples/wfs-states.html
index 655acd4..ffe6c87 100644
--- a/examples/wfs-states.html
+++ b/examples/wfs-states.html
@@ -22,7 +22,8 @@
         <div id="docs">
             <p>
                 This example shows the basic use of a vector layer with the
-                WFS protocol.
+                WFS protocol, and shows how to switch between a WMS and a vector
+                layer at a certain scale.
             </p>
             <p>
                 See the <a href="wfs-states.js" target="_blank">wfs-states.js
diff --git a/examples/wfs-states.js b/examples/wfs-states.js
index 6bdb499..c4e801e 100644
--- a/examples/wfs-states.js
+++ b/examples/wfs-states.js
@@ -13,7 +13,13 @@ function init() {
                 "http://vmap0.tiles.osgeo.org/wms/vmap0",
                 {layers: "basic"} 
             ),
+            new OpenLayers.Layer.WMS("States WMS",
+                "http://demo.opengeo.org/geoserver/wms",
+                {layers: "topp:states", format: "image/png", transparent: true},
+                {maxScale: 15000000}
+            ),
             new OpenLayers.Layer.Vector("States", {
+                minScale: 15000000,
                 strategies: [new OpenLayers.Strategy.BBOX()],
                 protocol: new OpenLayers.Protocol.WFS({
                     url: "http://demo.opengeo.org/geoserver/wfs",
diff --git a/examples/wmts-capabilities.html b/examples/wmts-capabilities.html
index 21b3cae..58aabd5 100644
--- a/examples/wmts-capabilities.html
+++ b/examples/wmts-capabilities.html
@@ -20,15 +20,15 @@
         <h1 id="title">Web Map Tile Service (WMTS) Capabilities Parsing</h1>
         <div id="tags">
             wmts, capabilities, getcapabilities
-        </div>         
+        </div>
         <p id="shortdesc">
             The WMTS Capabilities format allows for parsing of capabilities
-            documents from OGC Web Map Tile Service (WMTS) version 1.0.0 
+            documents from OGC Web Map Tile Service (WMTS) version 1.0.0
             implementations.
         </p>
-        
+
         <div id="map" class="smallmap"></div>
-        
+
         <div id="docs">
             <p>
                 This example creates an OpenLayers.Layer.WMTS layer to based
diff --git a/examples/wmts-capabilities.js b/examples/wmts-capabilities.js
index dc12941..103f5f5 100644
--- a/examples/wmts-capabilities.js
+++ b/examples/wmts-capabilities.js
@@ -1,15 +1,15 @@
-OpenLayers.ProxyHost = "/proxy/?url=";
+OpenLayers.ProxyHost = "proxy.cgi/?url=";
 
 var map, format;
 
 function init() {
-    
+
     format = new OpenLayers.Format.WMTSCapabilities({
         /**
          * This particular service is not in compliance with the WMTS spec and
          * is providing coordinates in y, x order regardless of the CRS.  To
-         * work around this, we can provide the format a table of CRS URN that 
-         * should be considered y, x order.  These will extend the defaults on 
+         * work around this, we can provide the format a table of CRS URN that
+         * should be considered y, x order.  These will extend the defaults on
          * the format.
          */
         yx: {
@@ -38,22 +38,21 @@ function init() {
                 isBaseLayer: false
             });
             map.addLayer(layer);
-        }, 
+        },
         failure: function() {
             alert("Trouble getting capabilities doc");
             OpenLayers.Console.error.apply(OpenLayers.Console, arguments);
         }
     });
-    
+
     map = new OpenLayers.Map({
         div: "map",
         projection: "EPSG:900913"
-    });    
-    
+    });
+
     var osm = new OpenLayers.Layer.OSM();
 
     map.addLayer(osm);
     map.addControl(new OpenLayers.Control.LayerSwitcher());
     map.setCenter(new OpenLayers.LonLat(-13677832, 5213272), 13);
-    
 }
diff --git a/examples/wps-client.html b/examples/wps-client.html
new file mode 100644
index 0000000..379f1bb
--- /dev/null
+++ b/examples/wps-client.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <title>OpenLayers WPS Client Example</title>
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <script src="../lib/OpenLayers.js"></script>
+    <script src="wps-client.js"></script>
+  </head>
+  <body onload="init()">
+    <h1 id="title">WPS Client Example</h1>
+
+    <div id="tags">
+        wps
+    </div>
+
+    <div id="shortdesc">Shows the usage of the WPS Client</div>
+
+    <div id="map" class="smallmap"></div>
+
+    <div id="docs">
+        <p>This example shows how simple it is to use the WPS Client. It
+            buffers an intersection of a geometry and a feature, which is
+            accomplished by chaining two processes. See
+        <a href="wps-client.js">wps-client.js</a> to see how this is done.</p>
+    </div>
+  </body>
+</html>
diff --git a/examples/wps-client.js b/examples/wps-client.js
new file mode 100644
index 0000000..511d491
--- /dev/null
+++ b/examples/wps-client.js
@@ -0,0 +1,75 @@
+OpenLayers.ProxyHost = 'proxy.cgi?url=';
+
+var map, client, intersect, buffer;
+
+function init() {
+    
+    map = new OpenLayers.Map('map', {
+        allOverlays: true,
+        center: [114, 16],
+        zoom: 4,
+        layers: [new OpenLayers.Layer.Vector()]
+    });
+
+    var features = [new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT(
+        'LINESTRING(117 22,112 18,118 13, 115 8)'
+    ))];
+    var geometry = OpenLayers.Geometry.fromWKT(
+        'POLYGON((110 20,120 20,120 10,110 10,110 20),(112 17,118 18,118 16,112 15,112 17))'
+    );
+
+    map.baseLayer.addFeatures(features);
+    map.baseLayer.addFeatures([new OpenLayers.Feature.Vector(geometry)]);
+    
+    client = new OpenLayers.WPSClient({
+        servers: {
+            opengeo: 'http://demo.opengeo.org/geoserver/wps'
+        }
+    });
+    
+    // Create a process and configure it
+    intersect = client.getProcess('opengeo', 'JTS:intersection');    
+    intersect.configure({
+        // spatial input can be a feature or a geometry or an array of
+        // features or geometries
+        inputs: {
+            a: features,
+            b: geometry
+        }
+    });
+    
+    // Create another process which chains the previous one and execute it
+    buffer = client.getProcess('opengeo', 'JTS:buffer');
+    buffer.execute({
+        inputs: {
+            geom: intersect.output(),
+            distance: 1
+        },
+        success: function(outputs) {
+            // outputs.result is a feature or an array of features for spatial
+            // processes.
+            map.baseLayer.addFeatures(outputs.result);
+        }
+    });
+
+    // Instead of creating a process and executing it, we could call execute on
+    // the client directly if we are only dealing with a single process:
+    /*
+    client.execute({
+        server: "opengeo",
+        process: "JTS:intersection",
+        // spatial input can be a feature or a geometry or an array of
+        // features or geometries
+        inputs: {
+            a: features,
+            b: geometry
+        },
+        success: function(outputs) {
+            // outputs.result is a feature or an array of features for spatial
+            // processes.
+            map.baseLayer.addFeatures(outputs.result);
+        }
+    });
+    */
+
+}
\ No newline at end of file
diff --git a/examples/wps.html b/examples/wps.html
new file mode 100644
index 0000000..b136e3a
--- /dev/null
+++ b/examples/wps.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <title>OpenLayers WPS Builder Example</title>
+    <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <style type="text/css">
+        .olControlEditingToolbar .olControlModifyFeatureItemInactive {
+            background-image: url(../theme/default/img/draw_point_off.png);
+        }
+        .olControlEditingToolbar .olControlModifyFeatureItemActive {
+            background-image: url(../theme/default/img/draw_point_on.png);
+        }
+        textarea {
+            display: block;
+            width: 100%;
+            height: 3em;
+        }
+        label {
+            display: block;
+        }
+        .notsupported {
+            color: red;
+        }
+        button {
+            display: block;
+            margin-top: 10px;
+        }
+        #docs {
+            top: 6em;
+            left: 550px;
+            position: absolute;
+            margin-right: 10px;
+        }
+    </style>
+  </head>
+  <body>
+    <h1 id="title">WPS Builder Example</h1>
+
+    <div id="tags">
+        wps, process, advanced
+    </div>
+
+    <div id="shortdesc">Using WPS formats to interact with WPS</div>
+
+    <div id="docs">
+        <p>This example shows WPS in action by using the WPSCapabilities,
+        WPSDescribeProcess and WPSExecute formats. See
+        <a target="_blank" href="wps.js">wps.js</a> for the
+        source code. <b>Note: For applications using WPS, the high level
+        approach shown in the <a href="wps-client.html">wps-client</a> example
+        is recommended instead.</b></p>
+        <ol>
+            <li>Select a process from the list below the map. The list is
+            populated with the result of a WPS GetCapabilities request, parsed
+            using <code>OpenLayers.Format.WPSCapabilities::read</code>.</li>
+            <li>Fill out the Input form. Hover over fields to get a description.
+            Required fields are marked with a "*".
+            To use a geometry from the map as input, select the geometry on the
+            map (using the pen symbol on the left of the toolbar) and just
+            click the field. The form is generated from the object returned by
+            <code>OpenLayers.Format.WPSDescribeProcess::read</code></li>
+            <li>Click "Execute" and examine the result in the result text area.
+            If the result can be parsed as features, it will be displayed on
+            the map as well. The process data is sent to the server with the
+            serialized XML from <code>OpenLayers.Format.WPSExecute::write</code>,
+            which can use a modified
+            <code>OpenLayers.Format.WPSDescribeProcess</code> result object as
+            input.</li>
+        </ol>
+    </div>
+
+    <div id="example" style="width:520px">
+        <div id="map" class="smallmap"></div>
+
+        <div>
+            <select id="processes"><option>Select a process</option></select>
+            <p id="abstract"></p>
+            <div id="input"></div>
+            <div id="output"></div>
+        </div>
+    </div>
+    <script src="../lib/OpenLayers.js"></script>
+    <script src="wps.js"></script>
+  </body>
+</html>
diff --git a/examples/wps.js b/examples/wps.js
new file mode 100644
index 0000000..e54f35d
--- /dev/null
+++ b/examples/wps.js
@@ -0,0 +1,353 @@
+OpenLayers.ProxyHost = "proxy.cgi?url=";
+
+var wps = "http://demo.opengeo.org/geoserver/wps",
+    capabilities, // the capabilities, read by Format.WPSCapabilities::read
+    process; // the process description from Format.WPSDescribeProcess::read
+
+// get some capabilities
+getCapabilities();
+
+// create the UI
+var layer = new OpenLayers.Layer.Vector("Scratchpad");
+var toolbar = new OpenLayers.Control.EditingToolbar(layer);
+toolbar.addControls([new OpenLayers.Control.ModifyFeature(layer, {
+    title: "Select feature"
+})]);
+var map = new OpenLayers.Map('map', {
+    controls: [
+        toolbar,
+        new OpenLayers.Control.ZoomPanel(),
+        new OpenLayers.Control.PanPanel()
+    ],
+    layers: [
+        new OpenLayers.Layer.WMS(
+            "OSM", "http://maps.opengeo.org/geowebcache/service/wms",
+            {layers: "openstreetmap", format: "image/png"}
+        ), layer
+    ]
+});
+map.zoomToMaxExtent();
+
+// add behavior to html elements
+document.getElementById("processes").onchange = describeProcess;
+
+// using OpenLayers.Format.WPSCapabilities to read the capabilities
+function getCapabilities() {
+    OpenLayers.Request.GET({
+        url: wps,
+        params: {
+            "SERVICE": "WPS",
+            "REQUEST": "GetCapabilities"
+        },
+        success: function(response){
+            capabilities = new OpenLayers.Format.WPSCapabilities().read(
+                response.responseText
+            );
+            var dropdown = document.getElementById("processes");
+            var offerings = capabilities.processOfferings, option;
+            // populate the dropdown
+            for (var p in offerings) {
+                option = document.createElement("option");
+                option.innerHTML = offerings[p].identifier;
+                option.value = p;
+                dropdown.appendChild(option);
+            }
+        }
+    });
+}
+
+// using OpenLayers.Format.WPSDescribeProcess to get information about a
+// process
+function describeProcess() {
+    var selection = this.options[this.selectedIndex].value;
+    OpenLayers.Request.GET({
+        url: wps,
+        params: {
+            "SERVICE": "WPS",
+            "REQUEST": "DescribeProcess",
+            "VERSION": capabilities.version,
+            "IDENTIFIER": selection
+        },
+        success: function(response) {
+            process = new OpenLayers.Format.WPSDescribeProcess().read(
+                response.responseText
+            ).processDescriptions[selection];
+            buildForm();
+        }
+    });
+}
+
+// dynamically create a form from the process description
+function buildForm() {
+    document.getElementById("abstract").innerHTML = process["abstract"];
+    document.getElementById("input").innerHTML = "<h3>Input:</h3>";
+    document.getElementById("output").innerHTML = "";
+
+    var inputs = process.dataInputs, supported = true,
+        sld = "text/xml; subtype=sld/1.0.0",
+        input;
+    for (var i=0,ii=inputs.length; i<ii; ++i) {
+        input = inputs[i];
+        if (input.complexData) {
+            var formats = input.complexData.supported.formats;
+            if (formats["application/wkt"]) {
+                addWKTInput(input);
+            } else if (formats["text/xml; subtype=wfs-collection/1.0"]) {
+                addWFSCollectionInput(input);
+            } else if (formats["image/tiff"]) {
+                addRasterInput(input);
+            } else if (formats[sld]) {
+                addXMLInput(input, sld);
+            } else {
+                supported = false;
+            }
+        } else if (input.boundingBoxData) {
+            addBoundingBoxInput(input);
+        } else if (input.literalData) {
+            addLiteralInput(input);
+        } else {
+            supported = false;
+        }
+        if (input.minOccurs > 0) {
+            document.getElementById("input").appendChild(document.createTextNode("* "));
+        }
+    }
+    
+    if (supported) {
+        var executeButton = document.createElement("button");
+        executeButton.innerHTML = "Execute";
+        document.getElementById("input").appendChild(executeButton);
+        executeButton.onclick = execute;
+    } else {
+        document.getElementById("input").innerHTML = '<span class="notsupported">' +
+            "Sorry, the WPS builder does not support the selected process." +
+            "</span>";
+    }
+}
+
+// helper function to dynamically create a textarea for geometry (WKT) data
+// input
+function addWKTInput(input, previousSibling) {
+    var name = input.identifier;
+    var container = document.getElementById("input");
+    var label = document.createElement("label");
+    label["for"] = name;
+    label.title = input["abstract"];
+    label.innerHTML = name + " (select feature, then click field):";
+    previousSibling && previousSibling.nextSibling ?
+        container.insertBefore(label, previousSibling.nextSibling) :
+        container.appendChild(label);
+    var field = document.createElement("textarea");
+    field.onclick = function () {
+        if (layer.selectedFeatures.length) {
+            this.innerHTML = new OpenLayers.Format.WKT().write(
+                layer.selectedFeatures[0]
+            );
+        }
+        createCopy(input, this, addWKTInput);
+    };
+    field.onblur = function() {
+        input.data = field.value ? {
+            complexData: {
+                mimeType: "application/wkt",
+                value: this.value
+            }
+        } : undefined;
+    };
+    field.title = input["abstract"];
+    field.id = name;
+    previousSibling && previousSibling.nextSibling ?
+        container.insertBefore(field, previousSibling.nextSibling.nextSibling) :
+        container.appendChild(field);
+}
+
+// helper function for xml input
+function addXMLInput(input, type) {
+    var name = input.identifier;
+    var field = document.createElement("input");
+    field.title = input["abstract"];
+    field.value = name + " (" + type + ")";
+    field.onblur = function() {
+        input.data = field.value ? {
+            complexData: {
+                mimeType: type,
+                value: this.value
+            }
+        } : undefined;
+    };
+    document.getElementById("input").appendChild(field);
+}
+
+// helper function to dynamically create a WFS collection reference input
+function addWFSCollectionInput(input) {
+    var name = input.identifier;
+    var field = document.createElement("input");
+    field.title = input["abstract"];
+    field.value = name + " (layer on demo server)";
+    addValueHandlers(field, function() {
+        input.reference = field.value ? {
+            mimeType: "text/xml; subtype=wfs-collection/1.0",
+            href: "http://geoserver/wfs",
+            method: "POST",
+            body: {
+                wfs: {
+                    version: "1.0.0",
+                    outputFormat: "GML2",
+                    featureType: field.value
+                }
+            }
+        } : undefined;
+    });
+    document.getElementById("input").appendChild(field);
+}
+
+// helper function to dynamically create a raster (GeoTIFF) url input
+function addRasterInput(input) {
+    var name = input.identifier;
+    var field = document.createElement("input");
+    field.title = input["abstract"];
+    var url = window.location.href.split("?")[0];
+    field.value = url.substr(0, url.lastIndexOf("/")+1) + "data/tazdem.tiff";
+    document.getElementById("input").appendChild(field);
+    (field.onblur = function() {
+        input.reference = {
+            mimeType: "image/tiff",
+            href: field.value,
+            method: "GET"
+        };
+    })();
+}
+
+// helper function to dynamically create a bounding box input
+function addBoundingBoxInput(input) {
+    var name = input.identifier;
+    var field = document.createElement("input");
+    field.title = input["abstract"];
+    field.value = "left,bottom,right,top (EPSG:4326)";
+    document.getElementById("input").appendChild(field);
+    addValueHandlers(field, function() {
+        input.boundingBoxData = {
+            projection: "EPSG:4326",
+            bounds: OpenLayers.Bounds.fromString(field.value)
+        };
+    });
+}
+
+// helper function to create a literal input textfield or dropdown
+function addLiteralInput(input, previousSibling) {
+    var name = input.identifier;
+    var container = document.getElementById("input");
+    var anyValue = input.literalData.anyValue;
+    // anyValue means textfield, otherwise we create a dropdown
+    var field = document.createElement(anyValue ? "input" : "select");
+    field.id = name;
+    field.title = input["abstract"];
+    previousSibling && previousSibling.nextSibling ?
+        container.insertBefore(field, previousSibling.nextSibling) :
+        container.appendChild(field);
+    if (anyValue) {
+        var dataType = input.literalData.dataType;
+        field.value = name + (dataType ? " (" + dataType + ")" : "");
+        addValueHandlers(field, function() {
+            input.data = field.value ? {
+                literalData: {
+                    value: field.value
+                }
+            } : undefined;
+            createCopy(input, field, addLiteralInput);
+        });
+    } else {
+        var option;
+        option = document.createElement("option");
+        option.innerHTML = name;
+        field.appendChild(option);
+        for (var v in input.literalData.allowedValues) {
+            option = document.createElement("option");
+            option.value = v;
+            option.innerHTML = v;
+            field.appendChild(option);
+        }
+        field.onchange = function() {
+            createCopy(input, field, addLiteralInput);
+            input.data = this.selectedIndex ? {
+                literalData: {
+                    value: this.options[this.selectedIndex].value
+                }
+            } : undefined;
+        };
+    }
+}
+
+// if maxOccurs is > 1, this will add a copy of the field
+function createCopy(input, field, fn) {
+    if (input.maxOccurs && input.maxOccurs > 1 && !field.userSelected) {
+        // add another copy of the field - we don't check maxOccurs
+        field.userSelected = true;
+        var newInput = OpenLayers.Util.extend({}, input);
+        // we recognize copies by the occurrence property
+        newInput.occurrence = (input.occurrence || 0) + 1;
+        process.dataInputs.push(newInput);
+        fn(newInput, field);
+    }
+}
+
+// helper function for adding events to form fields
+function addValueHandlers(field, onblur) {
+    field.onclick = function() {
+        if (!this.initialValue) {
+            this.initialValue = this.value;
+            this.value = "";
+        }
+    };
+    field.onblur = function() {
+        if (!this.value) {
+            this.value = this.initialValue;
+            delete this.initialValue;
+        }
+        onblur.apply(this, arguments);
+    };
+}
+
+// execute the process
+function execute() {
+    var output = process.processOutputs[0];
+    var input;
+    // remove occurrences that the user has not filled out
+    for (var i=process.dataInputs.length-1; i>=0; --i) {
+        input = process.dataInputs[i];
+        if ((input.minOccurs === 0 || input.occurrence) && !input.data && !input.reference) {
+            OpenLayers.Util.removeItem(process.dataInputs, input);
+        }
+    }
+    process.responseForm = {
+        rawDataOutput: {
+            identifier: output.identifier
+        }
+    };
+    if (output.complexOutput && output.complexOutput.supported.formats["application/wkt"]) {
+        process.responseForm.rawDataOutput.mimeType = "application/wkt";
+    }
+    OpenLayers.Request.POST({
+        url: wps,
+        data: new OpenLayers.Format.WPSExecute().write(process),
+        success: showOutput
+    });
+}
+
+// add the process's output to the page
+function showOutput(response) {
+    var result = document.getElementById("output");
+    result.innerHTML = "<h3>Output:</h3>";
+    var features;
+    var contentType = response.getResponseHeader("Content-Type");
+    if (contentType == "application/wkt") {
+        features = new OpenLayers.Format.WKT().read(response.responseText);
+    } else if (contentType == "text/xml; subtype=wfs-collection/1.0") {
+        features = new OpenLayers.Format.WFST.v1_0_0().read(response.responseText);
+    }
+    if (features && (features instanceof OpenLayers.Feature.Vector || features.length)) {
+        layer.addFeatures(features);
+        result.innerHTML += "The result should also be visible on the map.";
+    }
+    result.innerHTML += "<textarea>" + response.responseText + "</textarea>";
+}
\ No newline at end of file
diff --git a/lib/OpenLayers.js b/lib/OpenLayers.js
index acd1abd..f55f88c 100644
--- a/lib/OpenLayers.js
+++ b/lib/OpenLayers.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -132,6 +132,7 @@
             jsFiles = [
                 "OpenLayers/BaseTypes/Class.js",
                 "OpenLayers/Util.js",
+                "OpenLayers/Util/vendorPrefix.js",
                 "OpenLayers/Animation.js",
                 "OpenLayers/BaseTypes.js",
                 "OpenLayers/BaseTypes/Bounds.js",
@@ -143,10 +144,9 @@
                 "OpenLayers/Console.js",
                 "OpenLayers/Tween.js",
                 "OpenLayers/Kinetic.js",
-                "Rico/Corner.js",
-                "Rico/Color.js",
                 "OpenLayers/Events.js",
                 "OpenLayers/Events/buttonclick.js",
+                "OpenLayers/Events/featureclick.js",
                 "OpenLayers/Request.js",
                 "OpenLayers/Request/XMLHttpRequest.js",
                 "OpenLayers/Projection.js",
@@ -190,7 +190,6 @@
                 "OpenLayers/Layer/Zoomify.js",
                 "OpenLayers/Layer/ArcGISCache.js",
                 "OpenLayers/Popup/Anchored.js",
-                "OpenLayers/Popup/AnchoredBubble.js",
                 "OpenLayers/Popup/Framed.js",
                 "OpenLayers/Popup/FramedCloud.js",
                 "OpenLayers/Feature.js",
@@ -305,6 +304,7 @@
                 "OpenLayers/Format/GML/v2.js",
                 "OpenLayers/Format/GML/v3.js",
                 "OpenLayers/Format/Atom.js",
+                "OpenLayers/Format/EncodedPolyline.js",
                 "OpenLayers/Format/KML.js",
                 "OpenLayers/Format/GeoRSS.js",
                 "OpenLayers/Format/WFS.js",
@@ -312,6 +312,10 @@
                 "OpenLayers/Format/OWSCommon/v1.js",
                 "OpenLayers/Format/OWSCommon/v1_0_0.js",
                 "OpenLayers/Format/OWSCommon/v1_1_0.js",
+                "OpenLayers/Format/WCSCapabilities.js",
+                "OpenLayers/Format/WCSCapabilities/v1.js",
+                "OpenLayers/Format/WCSCapabilities/v1_0_0.js",
+                "OpenLayers/Format/WCSCapabilities/v1_1_0.js",
                 "OpenLayers/Format/WFSCapabilities.js",
                 "OpenLayers/Format/WFSCapabilities/v1.js",
                 "OpenLayers/Format/WFSCapabilities/v1_0_0.js",
@@ -393,7 +397,10 @@
                 "OpenLayers/Symbolizer/Raster.js",
                 "OpenLayers/Lang.js",
                 "OpenLayers/Lang/en.js",
-                "OpenLayers/Spherical.js"
+                "OpenLayers/Spherical.js",
+                "OpenLayers/TileManager.js",
+                "OpenLayers/WPSClient.js",
+                "OpenLayers/WPSProcess.js"
             ]; // etc.
         }
 
@@ -413,5 +420,10 @@
 
 /**
  * Constant: VERSION_NUMBER
+ *
+ * This constant identifies the version of OpenLayers.
+ *
+ * When asking questions or reporting issues, make sure to include the output of
+ *     OpenLayers.VERSION_NUMBER in the question or issue-description.
  */
-OpenLayers.VERSION_NUMBER="Release 2.12";
+OpenLayers.VERSION_NUMBER="Release 2.13";
diff --git a/lib/OpenLayers/Animation.js b/lib/OpenLayers/Animation.js
index cadc14d..7b47a08 100644
--- a/lib/OpenLayers/Animation.js
+++ b/lib/OpenLayers/Animation.js
@@ -1,10 +1,11 @@
-/**
- * Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
- * full text of the license. 
- *
+ * full text of the license. */
+
+/**
  * @requires OpenLayers/SingleFile.js
+ * @requires OpenLayers/Util/vendorPrefix.js
  */
 
 /**
@@ -19,11 +20,8 @@ OpenLayers.Animation = (function(window) {
      * Property: isNative
      * {Boolean} true if a native requestAnimationFrame function is available
      */
-    var isNative = !!(window.requestAnimationFrame ||
-        window.webkitRequestAnimationFrame ||
-        window.mozRequestAnimationFrame ||
-        window.oRequestAnimationFrame ||
-        window.msRequestAnimationFrame);
+    var requestAnimationFrame = OpenLayers.Util.vendorPrefix.js(window, "requestAnimationFrame");
+    var isNative = !!(requestAnimationFrame);
     
     /**
      * Function: requestFrame
@@ -36,11 +34,7 @@ OpenLayers.Animation = (function(window) {
      * element - {DOMElement} Optional element that visually bounds the animation.
      */
     var requestFrame = (function() {
-        var request = window.requestAnimationFrame ||
-            window.webkitRequestAnimationFrame ||
-            window.mozRequestAnimationFrame ||
-            window.oRequestAnimationFrame ||
-            window.msRequestAnimationFrame ||
+        var request = window[requestAnimationFrame] ||
             function(callback, element) {
                 window.setTimeout(callback, 16);
             };
diff --git a/lib/OpenLayers/BaseTypes.js b/lib/OpenLayers/BaseTypes.js
index 430cc5f..d416b8f 100644
--- a/lib/OpenLayers/BaseTypes.js
+++ b/lib/OpenLayers/BaseTypes.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -127,7 +127,9 @@ OpenLayers.String = {
                 if (i == 0) {
                     replacement = context;
                 }
-
+                if (replacement === undefined) {
+                    break;
+                }
                 replacement = replacement[subs[i]];
             }
 
@@ -189,13 +191,18 @@ OpenLayers.String = {
      * 
      * Parameters:
      * value - {String}
+     * trimWhitespace - {Boolean}
      *
      * Returns:
      * {Number|String} a Number if the passed value is a number, a String
      *     otherwise. 
      */
-    numericIf: function(value) {
-        return OpenLayers.String.isNumeric(value) ? parseFloat(value) : value;
+    numericIf: function(value, trimWhitespace) {
+        var originalValue = value;
+        if (trimWhitespace === true && value != null && value.replace) {
+            value = value.replace(/^\s*|\s*$/g, "");
+        }
+        return OpenLayers.String.isNumeric(value) ? parseFloat(value) : originalValue;
     }
 
 };
@@ -290,7 +297,25 @@ OpenLayers.Number = {
             str = integer + dsep + rem;
         }
         return str;
-    }
+    },
+
+    /**
+     * Method: zeroPad
+     * Create a zero padded string optionally with a radix for casting numbers.
+     *
+     * Parameters:
+     * num - {Number} The number to be zero padded.
+     * len - {Number} The length of the string to be returned.
+     * radix - {Number} An integer between 2 and 36 specifying the base to use
+     *     for representing numeric values.
+     */
+    zeroPad: function(num, len, radix) {
+        var str = num.toString(radix || 10);
+        while (str.length < len) {
+            str = "0" + str;
+        }
+        return str;
+    }    
 };
 
 /**
diff --git a/lib/OpenLayers/BaseTypes/Bounds.js b/lib/OpenLayers/BaseTypes/Bounds.js
index 35f2b6e..a828eb0 100644
--- a/lib/OpenLayers/BaseTypes/Bounds.js
+++ b/lib/OpenLayers/BaseTypes/Bounds.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -63,7 +63,7 @@ OpenLayers.Bounds = OpenLayers.Class({
      * left - {Number} The left bounds of the box.  Note that for width
      *        calculations, this is assumed to be less than the right value.
      * bottom - {Number} The bottom bounds of the box.  Note that for height
-     *          calculations, this is assumed to be more than the top value.
+     *          calculations, this is assumed to be less than the top value.
      * right - {Number} The right bounds.
      * top - {Number} The top bounds.
      *
@@ -128,6 +128,7 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /** 
      * APIMethod: toString
+     * Returns a string representation of the bounds object.
      * 
      * Returns:
      * {String} String representation of bounds object. 
@@ -138,6 +139,11 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: toArray
+     * Returns an array representation of the bounds object.
+     *
+     * Returns an array of left, bottom, right, top properties, or -- when the
+     *     optional parameter is true -- an array of the  bottom, left, top,
+     *     right properties.
      *
      * Parameters:
      * reverseAxisOrder - {Boolean} Should we reverse the axis order?
@@ -155,6 +161,7 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /** 
      * APIMethod: toBBOX
+     * Returns a boundingbox-string representation of the bounds object.
      * 
      * Parameters:
      * decimal - {Integer} How many significant digits in the bbox coords?
@@ -163,7 +170,7 @@ OpenLayers.Bounds = OpenLayers.Class({
      * 
      * Returns:
      * {String} Simple String representation of bounds object.
-     *          (e.g. <i>"5,42,10,45"</i>)
+     *          (e.g. "5,42,10,45")
      */
     toBBOX:function(decimal, reverseAxisOrder) {
         if (decimal== null) {
@@ -202,9 +209,10 @@ OpenLayers.Bounds = OpenLayers.Class({
     
     /**
      * APIMethod: getWidth
+     * Returns the width of the bounds.
      * 
      * Returns:
-     * {Float} The width of the bounds
+     * {Float} The width of the bounds (right minus left).
      */
     getWidth:function() {
         return (this.right - this.left);
@@ -212,6 +220,7 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: getHeight
+     * Returns the height of the bounds.
      * 
      * Returns:
      * {Float} The height of the bounds (top minus bottom).
@@ -222,9 +231,10 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: getSize
+     * Returns an <OpenLayers.Size> object of the bounds.
      * 
      * Returns:
-     * {<OpenLayers.Size>} The size of the box.
+     * {<OpenLayers.Size>} The size of the bounds.
      */
     getSize:function() {
         return new OpenLayers.Size(this.getWidth(), this.getHeight());
@@ -232,6 +242,8 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: getCenterPixel
+     * Returns the <OpenLayers.Pixel> object which represents the center of the
+     *     bounds.
      * 
      * Returns:
      * {<OpenLayers.Pixel>} The center of the bounds in pixel space.
@@ -243,7 +255,9 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: getCenterLonLat
-     * 
+     * Returns the <OpenLayers.LonLat> object which represents the center of the
+     *     bounds.
+     *
      * Returns:
      * {<OpenLayers.LonLat>} The center of the bounds in map space.
      */
@@ -297,11 +311,24 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: add
-     * 
+     * Shifts the coordinates of the bound by the given horizontal and vertical
+     *     deltas.
+     *
+     * (start code)
+     * var bounds = new OpenLayers.Bounds(0, 0, 10, 10);
+     * bounds.toString();
+     * // => "0,0,10,10"
+     *
+     * bounds.add(-1.5, 4).toString();
+     * // => "-1.5,4,8.5,14"
+     * (end)
+     *
+     * This method will throw a TypeError if it is passed null as an argument.
+     *
      * Parameters:
-     * x - {Float}
-     * y - {Float}
-     * 
+     * x - {Float} horizontal delta
+     * y - {Float} vertical delta
+     *
      * Returns:
      * {<OpenLayers.Bounds>} A new bounds whose coordinates are the same as
      *     this, but shifted by the passed-in x and y values.
@@ -316,51 +343,77 @@ OpenLayers.Bounds = OpenLayers.Class({
     
     /**
      * APIMethod: extend
-     * Extend the bounds to include the point, lonlat, or bounds specified.
-     *     Note, this function assumes that left < right and bottom < top.
-     * 
-     * Parameters: 
-     * object - {Object} Can be LonLat, Point, or Bounds
+     * Extend the bounds to include the <OpenLayers.LonLat>,
+     *     <OpenLayers.Geometry.Point> or <OpenLayers.Bounds> specified.
+     *
+     * Please note that this function assumes that left < right and
+     *     bottom < top.
+     *
+     * Parameters:
+     * object - {<OpenLayers.LonLat>, <OpenLayers.Geometry.Point> or
+     *     <OpenLayers.Bounds>} The object to be included in the new bounds
+     *     object.
      */
     extend:function(object) {
-        var bounds = null;
         if (object) {
-            // clear cached center location
             switch(object.CLASS_NAME) {
-                case "OpenLayers.LonLat":    
-                    bounds = new OpenLayers.Bounds(object.lon, object.lat,
-                                                    object.lon, object.lat);
+                case "OpenLayers.LonLat":
+                    this.extendXY(object.lon, object.lat);
                     break;
                 case "OpenLayers.Geometry.Point":
-                    bounds = new OpenLayers.Bounds(object.x, object.y,
-                                                    object.x, object.y);
+                    this.extendXY(object.x, object.y);
                     break;
-                    
-                case "OpenLayers.Bounds":    
-                    bounds = object;
+
+                case "OpenLayers.Bounds":
+                    // clear cached center location
+                    this.centerLonLat = null;
+
+                    if ( (this.left == null) || (object.left < this.left)) {
+                        this.left = object.left;
+                    }
+                    if ( (this.bottom == null) || (object.bottom < this.bottom) ) {
+                        this.bottom = object.bottom;
+                    }
+                    if ( (this.right == null) || (object.right > this.right) ) {
+                        this.right = object.right;
+                    }
+                    if ( (this.top == null) || (object.top > this.top) ) {
+                        this.top = object.top;
+                    }
                     break;
             }
-    
-            if (bounds) {
-                this.centerLonLat = null;
-                if ( (this.left == null) || (bounds.left < this.left)) {
-                    this.left = bounds.left;
-                }
-                if ( (this.bottom == null) || (bounds.bottom < this.bottom) ) {
-                    this.bottom = bounds.bottom;
-                } 
-                if ( (this.right == null) || (bounds.right > this.right) ) {
-                    this.right = bounds.right;
-                }
-                if ( (this.top == null) || (bounds.top > this.top) ) { 
-                    this.top = bounds.top;
-                }
-            }
+        }
+    },
+
+    /**
+     * APIMethod: extendXY
+     * Extend the bounds to include the XY coordinate specified.
+     *
+     * Parameters:
+     * x - {number} The X part of the the coordinate.
+     * y - {number} The Y part of the the coordinate.
+     */
+    extendXY:function(x, y) {
+        // clear cached center location
+        this.centerLonLat = null;
+
+        if ((this.left == null) || (x < this.left)) {
+            this.left = x;
+        }
+        if ((this.bottom == null) || (y < this.bottom)) {
+            this.bottom = y;
+        }
+        if ((this.right == null) || (x > this.right)) {
+            this.right = x;
+        }
+        if ((this.top == null) || (y > this.top)) {
+            this.top = y;
         }
     },
 
     /**
      * APIMethod: containsLonLat
+     * Returns whether the bounds object contains the given <OpenLayers.LonLat>.
      * 
      * Parameters:
      * ll - {<OpenLayers.LonLat>|Object} OpenLayers.LonLat or an
@@ -399,6 +452,7 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: containsPixel
+     * Returns whether the bounds object contains the given <OpenLayers.Pixel>.
      * 
      * Parameters:
      * px - {<OpenLayers.Pixel>}
@@ -414,6 +468,7 @@ OpenLayers.Bounds = OpenLayers.Class({
     
     /**
      * APIMethod: contains
+     * Returns whether the bounds object contains the given x and y.
      * 
      * Parameters:
      * x - {Float}
@@ -535,7 +590,7 @@ OpenLayers.Bounds = OpenLayers.Class({
     
     /**
      * APIMethod: containsBounds
-     * Determine whether the target bounds is contained within this bounds.
+     * Returns whether the bounds object contains the given <OpenLayers.Bounds>.
      * 
      * bounds - {<OpenLayers.Bounds>} The target bounds.
      * partial - {Boolean} If any of the target corners is within this bounds
@@ -565,10 +620,12 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /** 
      * APIMethod: determineQuadrant
-     * 
+     * Returns the the quadrant ("br", "tr", "tl", "bl") in which the given
+     *     <OpenLayers.LonLat> lies.
+     *
      * Parameters:
      * lonlat - {<OpenLayers.LonLat>}
-     * 
+     *
      * Returns:
      * {String} The quadrant ("br" "tr" "tl" "bl") of the bounds in which the
      *     coordinate lies.
@@ -615,6 +672,7 @@ OpenLayers.Bounds = OpenLayers.Class({
 
     /**
      * APIMethod: wrapDateLine
+     * Wraps the bounds object around the dateline.
      *  
      * Parameters:
      * maxExtent - {<OpenLayers.Bounds>}
@@ -681,12 +739,18 @@ OpenLayers.Bounds = OpenLayers.Class({
 /** 
  * APIFunction: fromString
  * Alternative constructor that builds a new OpenLayers.Bounds from a 
- *     parameter string
- * 
+ *     parameter string.
+ *
+ * (begin code)
+ * OpenLayers.Bounds.fromString("5,42,10,45");
+ * // => equivalent to ...
+ * new OpenLayers.Bounds(5, 42, 10, 45);
+ * (end)
+ *
  * Parameters: 
- * str - {String}Comma-separated bounds string. (e.g. <i>"5,42,10,45"</i>)
+ * str - {String} Comma-separated bounds string. (e.g. "5,42,10,45")
  * reverseAxisOrder - {Boolean} Does the string use reverse axis order?
- * 
+ *
  * Returns:
  * {<OpenLayers.Bounds>} New bounds object built from the 
  *                       passed-in String.
@@ -698,11 +762,16 @@ OpenLayers.Bounds.fromString = function(str, reverseAxisOrder) {
 
 /** 
  * APIFunction: fromArray
- * Alternative constructor that builds a new OpenLayers.Bounds
- *     from an array
- * 
+ * Alternative constructor that builds a new OpenLayers.Bounds from an array.
+ *
+ * (begin code)
+ * OpenLayers.Bounds.fromArray( [5, 42, 10, 45] );
+ * // => equivalent to ...
+ * new OpenLayers.Bounds(5, 42, 10, 45);
+ * (end)
+ *
  * Parameters:
- * bbox - {Array(Float)} Array of bounds values (e.g. <i>[5,42,10,45]</i>)
+ * bbox - {Array(Float)} Array of bounds values (e.g. [5,42,10,45])
  * reverseAxisOrder - {Boolean} Does the array use reverse axis order?
  *
  * Returns:
@@ -716,12 +785,17 @@ OpenLayers.Bounds.fromArray = function(bbox, reverseAxisOrder) {
 
 /** 
  * APIFunction: fromSize
- * Alternative constructor that builds a new OpenLayers.Bounds
- *     from a size
- * 
+ * Alternative constructor that builds a new OpenLayers.Bounds from a size.
+ *
+ * (begin code)
+ * OpenLayers.Bounds.fromSize( new OpenLayers.Size(10, 20) );
+ * // => equivalent to ...
+ * new OpenLayers.Bounds(0, 20, 10, 0);
+ * (end)
+ *
  * Parameters:
- * size - {<OpenLayers.Size>|Object} OpenLayers.Size or an object with
- *     a 'w' and 'h' properties.
+ * size - {<OpenLayers.Size> or Object} <OpenLayers.Size> or an object with
+ *     both 'w' and 'h' properties.
  *
  * Returns:
  * {<OpenLayers.Bounds>} New bounds object built from the passed-in size.
@@ -737,6 +811,14 @@ OpenLayers.Bounds.fromSize = function(size) {
  * Function: oppositeQuadrant
  * Get the opposite quadrant for a given quadrant string.
  *
+ * (begin code)
+ * OpenLayers.Bounds.oppositeQuadrant( "tl" );
+ * // => "br"
+ *
+ * OpenLayers.Bounds.oppositeQuadrant( "tr" );
+ * // => "bl"
+ * (end)
+ *
  * Parameters:
  * quadrant - {String} two character quadrant shortstring
  *
diff --git a/lib/OpenLayers/BaseTypes/Class.js b/lib/OpenLayers/BaseTypes/Class.js
index b703464..2be7212 100644
--- a/lib/OpenLayers/BaseTypes/Class.js
+++ b/lib/OpenLayers/BaseTypes/Class.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/BaseTypes/Date.js b/lib/OpenLayers/BaseTypes/Date.js
index f42b713..2646f24 100644
--- a/lib/OpenLayers/BaseTypes/Date.js
+++ b/lib/OpenLayers/BaseTypes/Date.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -15,6 +15,14 @@
  */
 OpenLayers.Date = {
 
+    /** 
+     * APIProperty: dateRegEx
+     * The regex to be used for validating dates. You can provide your own
+     * regex for instance for adding support for years before BC. Default
+     * value is: /^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))|Z)?$/
+     */
+    dateRegEx: /^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))|Z)?$/,
+
     /**
      * APIMethod: toISOString
      * Generates a string representing a date.  The format of the string follows
@@ -41,13 +49,6 @@ OpenLayers.Date = {
                 return date.toISOString();
             };
         } else {
-            function pad(num, len) {
-                var str = num + "";
-                while (str.length < len) {
-                    str = "0" + str;
-                }
-                return str;
-            }
             return function(date) {
                 var str;
                 if (isNaN(date.getTime())) {
@@ -57,12 +58,12 @@ OpenLayers.Date = {
                 } else {
                     str =
                         date.getUTCFullYear() + "-" +
-                        pad(date.getUTCMonth() + 1, 2) + "-" +
-                        pad(date.getUTCDate(), 2) + "T" +
-                        pad(date.getUTCHours(), 2) + ":" +
-                        pad(date.getUTCMinutes(), 2) + ":" +
-                        pad(date.getUTCSeconds(), 2) + "." +
-                        pad(date.getUTCMilliseconds(), 3) + "Z";
+                        OpenLayers.Number.zeroPad(date.getUTCMonth() + 1, 2) + "-" +
+                        OpenLayers.Number.zeroPad(date.getUTCDate(), 2) + "T" +
+                        OpenLayers.Number.zeroPad(date.getUTCHours(), 2) + ":" +
+                        OpenLayers.Number.zeroPad(date.getUTCMinutes(), 2) + ":" +
+                        OpenLayers.Number.zeroPad(date.getUTCSeconds(), 2) + "." +
+                        OpenLayers.Number.zeroPad(date.getUTCMilliseconds(), 3) + "Z";
                 }
                 return str;
             };
@@ -91,7 +92,7 @@ OpenLayers.Date = {
      */
     parse: function(str) {
         var date;
-        var match = str.match(/^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))|Z)?$/);
+        var match = str.match(this.dateRegEx);
         if (match && (match[1] || match[7])) { // must have at least year or time
             var year = parseInt(match[1], 10) || 0;
             var month = (parseInt(match[2], 10) - 1) || 0;
diff --git a/lib/OpenLayers/BaseTypes/Element.js b/lib/OpenLayers/BaseTypes/Element.js
index 9a54b4d..dc71b5c 100644
--- a/lib/OpenLayers/BaseTypes/Element.js
+++ b/lib/OpenLayers/BaseTypes/Element.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/BaseTypes/LonLat.js b/lib/OpenLayers/BaseTypes/LonLat.js
index 892961f..0780dc3 100644
--- a/lib/OpenLayers/BaseTypes/LonLat.js
+++ b/lib/OpenLayers/BaseTypes/LonLat.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/BaseTypes/Pixel.js b/lib/OpenLayers/BaseTypes/Pixel.js
index 55d07f4..d6ac60a 100644
--- a/lib/OpenLayers/BaseTypes/Pixel.js
+++ b/lib/OpenLayers/BaseTypes/Pixel.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/BaseTypes/Size.js b/lib/OpenLayers/BaseTypes/Size.js
index ef4d12a..34c7a6c 100644
--- a/lib/OpenLayers/BaseTypes/Size.js
+++ b/lib/OpenLayers/BaseTypes/Size.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Console.js b/lib/OpenLayers/Console.js
index 823ba1c..ef5029a 100644
--- a/lib/OpenLayers/Console.js
+++ b/lib/OpenLayers/Console.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control.js b/lib/OpenLayers/Control.js
index e585ce8..472a4e6 100644
--- a/lib/OpenLayers/Control.js
+++ b/lib/OpenLayers/Control.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -120,6 +120,12 @@ OpenLayers.Control = OpenLayers.Class({
      */
     active: null,
 
+    /**
+     * Property: handlerOptions
+     * {Object} Used to set non-default properties on the control's handler
+     */
+    handlerOptions: null,
+
     /** 
      * Property: handler 
      * {<OpenLayers.Handler>} null
diff --git a/lib/OpenLayers/Control/ArgParser.js b/lib/OpenLayers/Control/ArgParser.js
index abfd6b3..6b076f5 100644
--- a/lib/OpenLayers/Control/ArgParser.js
+++ b/lib/OpenLayers/Control/ArgParser.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/Attribution.js b/lib/OpenLayers/Control/Attribution.js
index 6e50ee6..e5ea1ce 100644
--- a/lib/OpenLayers/Control/Attribution.js
+++ b/lib/OpenLayers/Control/Attribution.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -19,8 +19,8 @@ OpenLayers.Control.Attribution =
   OpenLayers.Class(OpenLayers.Control, {
     
     /**
-     * APIProperty: seperator
-     * {String} String used to seperate layers.
+     * APIProperty: separator
+     * {String} String used to separate layers.
      */
     separator: ", ",
     
diff --git a/lib/OpenLayers/Control/Button.js b/lib/OpenLayers/Control/Button.js
index 84699ee..830df6d 100644
--- a/lib/OpenLayers/Control/Button.js
+++ b/lib/OpenLayers/Control/Button.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/CacheRead.js b/lib/OpenLayers/Control/CacheRead.js
index b08928c..7768bce 100644
--- a/lib/OpenLayers/Control/CacheRead.js
+++ b/lib/OpenLayers/Control/CacheRead.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/CacheWrite.js b/lib/OpenLayers/Control/CacheWrite.js
index 8b4e787..3d4ecf5 100644
--- a/lib/OpenLayers/Control/CacheWrite.js
+++ b/lib/OpenLayers/Control/CacheWrite.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -111,7 +111,7 @@ OpenLayers.Control.CacheWrite = OpenLayers.Class(OpenLayers.Control, {
     addLayer: function(evt) {
         evt.layer.events.on({
             tileloadstart: this.makeSameOrigin,
-            tileloaded: this.cache,
+            tileloaded: this.onTileLoaded,
             scope: this
         });        
     },
@@ -128,7 +128,7 @@ OpenLayers.Control.CacheWrite = OpenLayers.Class(OpenLayers.Control, {
     removeLayer: function(evt) {
         evt.layer.events.un({
             tileloadstart: this.makeSameOrigin,
-            tileloaded: this.cache,
+            tileloaded: this.onTileLoaded,
             scope: this
         });
     },
@@ -157,6 +157,22 @@ OpenLayers.Control.CacheWrite = OpenLayers.Class(OpenLayers.Control, {
     },
     
     /**
+     * Method: onTileLoaded
+     * Decides whether a tile can be cached and calls the cache method.
+     *
+     * Parameters:
+     * evt - {Event}
+     */
+    onTileLoaded: function(evt) {
+        if (this.active && !evt.aborted &&
+                evt.tile instanceof OpenLayers.Tile.Image &&
+                evt.tile.url.substr(0, 5) !== 'data:') {
+            this.cache({tile: evt.tile});
+            delete OpenLayers.Control.CacheWrite.urlMap[evt.tile.url];
+        }
+    },
+    
+    /**
      * Method: cache
      * Adds a tile to the cache. When the cache is full, the "cachefull" event
      * is triggered.
@@ -166,29 +182,25 @@ OpenLayers.Control.CacheWrite = OpenLayers.Class(OpenLayers.Control, {
      *     <OpenLayers.Tile.Image> with the data to add to the cache
      */
     cache: function(obj) {
-        if (this.active && window.localStorage) {
+        if (window.localStorage) {
             var tile = obj.tile;
-            if (tile instanceof OpenLayers.Tile.Image &&
-                    tile.url.substr(0, 5) !== 'data:') {
-                try {
-                    var canvasContext = tile.getCanvasContext();
-                    if (canvasContext) {
-                        var urlMap = OpenLayers.Control.CacheWrite.urlMap;
-                        var url = urlMap[tile.url] || tile.url;
-                        window.localStorage.setItem(
-                            "olCache_" + url,
-                            canvasContext.canvas.toDataURL(this.imageFormat)
-                        );
-                        delete urlMap[tile.url];
-                    }
-                } catch(e) {
-                    // local storage full or CORS violation
-                    var reason = e.name || e.message;
-                    if (reason && this.quotaRegEx.test(reason)) {
-                        this.events.triggerEvent("cachefull", {tile: tile});
-                    } else {
-                        OpenLayers.Console.error(e.toString());
-                    }
+            try {
+                var canvasContext = tile.getCanvasContext();
+                if (canvasContext) {
+                    var urlMap = OpenLayers.Control.CacheWrite.urlMap;
+                    var url = urlMap[tile.url] || tile.url;
+                    window.localStorage.setItem(
+                        "olCache_" + url,
+                        canvasContext.canvas.toDataURL(this.imageFormat)
+                    );
+                }
+            } catch(e) {
+                // local storage full or CORS violation
+                var reason = e.name || e.message;
+                if (reason && this.quotaRegEx.test(reason)) {
+                    this.events.triggerEvent("cachefull", {tile: tile});
+                } else {
+                    OpenLayers.Console.error(e.toString());
                 }
             }
         }
diff --git a/lib/OpenLayers/Control/DragFeature.js b/lib/OpenLayers/Control/DragFeature.js
index af81062..d8fb15f 100644
--- a/lib/OpenLayers/Control/DragFeature.js
+++ b/lib/OpenLayers/Control/DragFeature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/DragPan.js b/lib/OpenLayers/Control/DragPan.js
index 1dc3eb5..981a649 100644
--- a/lib/OpenLayers/Control/DragPan.js
+++ b/lib/OpenLayers/Control/DragPan.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -32,11 +32,12 @@ OpenLayers.Control.DragPan = OpenLayers.Class(OpenLayers.Control, {
     /**
      * Property: interval
      * {Integer} The number of milliseconds that should ellapse before
-     *     panning the map again. Defaults to 1 millisecond. In most cases
-     *     you won't want to change this value. For slow machines/devices
-     *     larger values can be tried out.
+     *     panning the map again. Defaults to 0 milliseconds, which means that
+     *     no separate cycle is used for panning. In most cases you won't want
+     *     to change this value. For slow machines/devices larger values can be
+     *     tried out.
      */
-    interval: 1,
+    interval: 0,
     
     /**
      * APIProperty: documentDrag
@@ -56,11 +57,11 @@ OpenLayers.Control.DragPan = OpenLayers.Class(OpenLayers.Control, {
      * {Boolean} Set this option to enable "kinetic dragging". Can be
      *     set to true or to an object. If set to an object this
      *     object will be passed to the {<OpenLayers.Kinetic>}
-     *     constructor. Defaults to false.
-     *     If you set this property, you should ensure that 
-     *     OpenLayers/Kinetic.js is included in your build config
+     *     constructor. Defaults to true.
+     *     To get kinetic dragging, ensure that OpenLayers/Kinetic.js is
+     *     included in your build config.
      */
-    enableKinetic: false,
+    enableKinetic: true,
 
     /**
      * APIProperty: kineticInterval
@@ -77,7 +78,7 @@ OpenLayers.Control.DragPan = OpenLayers.Class(OpenLayers.Control, {
      * <panMapDone> as callbacks.
      */    
     draw: function() {
-        if(this.enableKinetic) {
+        if (this.enableKinetic && OpenLayers.Kinetic) {
             var config = {interval: this.kineticInterval};
             if(typeof this.enableKinetic === "object") {
                 config = OpenLayers.Util.extend(config, this.enableKinetic);
diff --git a/lib/OpenLayers/Control/DrawFeature.js b/lib/OpenLayers/Control/DrawFeature.js
index 62b5fab..b0afc71 100644
--- a/lib/OpenLayers/Control/DrawFeature.js
+++ b/lib/OpenLayers/Control/DrawFeature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -62,7 +62,6 @@ OpenLayers.Control.DrawFeature = OpenLayers.Class(OpenLayers.Control, {
      * APIProperty: handlerOptions
      * {Object} Used to set non-default properties on the control's handler
      */
-    handlerOptions: null,
     
     /**
      * Constructor: OpenLayers.Control.DrawFeature
diff --git a/lib/OpenLayers/Control/EditingToolbar.js b/lib/OpenLayers/Control/EditingToolbar.js
index 4cd4f85..ba7ca40 100644
--- a/lib/OpenLayers/Control/EditingToolbar.js
+++ b/lib/OpenLayers/Control/EditingToolbar.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/Geolocate.js b/lib/OpenLayers/Control/Geolocate.js
index 0a1e18e..4b5b439 100644
--- a/lib/OpenLayers/Control/Geolocate.js
+++ b/lib/OpenLayers/Control/Geolocate.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -45,8 +45,15 @@ OpenLayers.Control.Geolocate = OpenLayers.Class(OpenLayers.Control, {
     /**
      * Property: geolocation
      * {Object} The geolocation engine, as a property to be possibly mocked.
+     * This is set lazily to avoid a memory leak in IE9.
      */
-    geolocation: navigator.geolocation,
+    geolocation: null,
+
+    /**
+     * Property: available
+     * {Boolean} The navigator.geolocation object is available.
+     */
+    available: ('geolocation' in navigator),
 
     /**
      * APIProperty: bind
@@ -90,6 +97,10 @@ OpenLayers.Control.Geolocate = OpenLayers.Class(OpenLayers.Control, {
      * {Boolean} The control was effectively activated.
      */
     activate: function () {
+        if (this.available && !this.geolocation) {
+            // set lazily to avoid IE9 memory leak
+            this.geolocation = navigator.geolocation;
+        }
         if (!this.geolocation) {
             this.events.triggerEvent("locationuncapable");
             return false;
diff --git a/lib/OpenLayers/Control/GetFeature.js b/lib/OpenLayers/Control/GetFeature.js
index 368ea9c..144e87f 100644
--- a/lib/OpenLayers/Control/GetFeature.js
+++ b/lib/OpenLayers/Control/GetFeature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -144,7 +144,6 @@ OpenLayers.Control.GetFeature = OpenLayers.Class(OpenLayers.Control, {
      * {Object} Additional options for the handlers used by this control. This
      *     is a hash with the keys "click", "box" and "hover".
      */
-    handlerOptions: null,
     
     /**
      * Property: handlers
diff --git a/lib/OpenLayers/Control/Graticule.js b/lib/OpenLayers/Control/Graticule.js
index e393c4b..2fce50d 100644
--- a/lib/OpenLayers/Control/Graticule.js
+++ b/lib/OpenLayers/Control/Graticule.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/KeyboardDefaults.js b/lib/OpenLayers/Control/KeyboardDefaults.js
index b973b3d..3af8831 100644
--- a/lib/OpenLayers/Control/KeyboardDefaults.js
+++ b/lib/OpenLayers/Control/KeyboardDefaults.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,6 +6,7 @@
 /**
  * @requires OpenLayers/Control.js
  * @requires OpenLayers/Handler/Keyboard.js
+ * @requires OpenLayers/Events.js
  */
 
 /**
@@ -75,7 +76,16 @@ OpenLayers.Control.KeyboardDefaults = OpenLayers.Class(OpenLayers.Control, {
      */
     defaultKeyPress: function (evt) {
         var size, handled = true;
-        switch(evt.keyCode) {
+
+        var target = OpenLayers.Event.element(evt);
+        if (target  &&
+            (target.tagName == 'INPUT' ||
+             target.tagName == 'TEXTAREA' ||
+             target.tagName == 'SELECT')) {
+            return;
+        }
+
+        switch (evt.keyCode) {
             case OpenLayers.Event.KEY_LEFT:
                 this.map.pan(-this.slideFactor, 0);
                 break;
diff --git a/lib/OpenLayers/Control/LayerSwitcher.js b/lib/OpenLayers/Control/LayerSwitcher.js
index b8524ef..668f5c3 100644
--- a/lib/OpenLayers/Control/LayerSwitcher.js
+++ b/lib/OpenLayers/Control/LayerSwitcher.js
@@ -1,140 +1,116 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
-/** 
+/**
  * @requires OpenLayers/Control.js
  * @requires OpenLayers/Lang.js
- * @requires OpenLayers/Console.js
+ * @requires OpenLayers/Util.js
  * @requires OpenLayers/Events/buttonclick.js
  */
 
 /**
  * Class: OpenLayers.Control.LayerSwitcher
- * The LayerSwitcher control displays a table of contents for the map. This 
+ * The LayerSwitcher control displays a table of contents for the map. This
  * allows the user interface to switch between BaseLasyers and to show or hide
- * Overlays. By default the switcher is shown minimized on the right edge of 
+ * Overlays. By default the switcher is shown minimized on the right edge of
  * the map, the user may expand it by clicking on the handle.
  *
- * To create the LayerSwitcher outside of the map, pass the Id of a html div 
+ * To create the LayerSwitcher outside of the map, pass the Id of a html div
  * as the first argument to the constructor.
- * 
+ *
  * Inherits from:
  *  - <OpenLayers.Control>
  */
-OpenLayers.Control.LayerSwitcher = 
-  OpenLayers.Class(OpenLayers.Control, {
-
-    /**
-     * APIProperty: roundedCorner
-     * {Boolean} If true the Rico library is used for rounding the corners
-     *     of the layer switcher div, defaults to false. *Deprecated*. Use
-     *     CSS3's border-radius instead. If this option is set to true the
-     *     Rico/Corner.js script must be loaded in the page, and therefore
-     *     listed in the build profile.
-     *
-     */
-    roundedCorner: false,
+OpenLayers.Control.LayerSwitcher = OpenLayers.Class(OpenLayers.Control, {
 
     /**  
-     * APIProperty: roundedCornerColor
-     * {String} The color of the rounded corners, only applies if roundedCorner
-     *     is true, defaults to "darkblue".
-     */
-    roundedCornerColor: "darkblue",
-    
-    /**  
      * Property: layerStates 
      * {Array(Object)} Basically a copy of the "state" of the map's layers 
      *     the last time the control was drawn. We have this in order to avoid
      *     unnecessarily redrawing the control.
      */
     layerStates: null,
-    
 
   // DOM Elements
-  
+
     /**
      * Property: layersDiv
-     * {DOMElement} 
+     * {DOMElement}
      */
     layersDiv: null,
-    
-    /** 
+
+    /**
      * Property: baseLayersDiv
      * {DOMElement}
      */
     baseLayersDiv: null,
 
-    /** 
+    /**
      * Property: baseLayers
      * {Array(Object)}
      */
     baseLayers: null,
-    
-    
-    /** 
+
+
+    /**
      * Property: dataLbl
-     * {DOMElement} 
+     * {DOMElement}
      */
     dataLbl: null,
-    
-    /** 
+
+    /**
      * Property: dataLayersDiv
-     * {DOMElement} 
+     * {DOMElement}
      */
     dataLayersDiv: null,
 
-    /** 
+    /**
      * Property: dataLayers
-     * {Array(Object)} 
+     * {Array(Object)}
      */
     dataLayers: null,
 
 
-    /** 
+    /**
      * Property: minimizeDiv
-     * {DOMElement} 
+     * {DOMElement}
      */
     minimizeDiv: null,
 
-    /** 
+    /**
      * Property: maximizeDiv
-     * {DOMElement} 
+     * {DOMElement}
      */
     maximizeDiv: null,
-    
+
     /**
      * APIProperty: ascending
-     * {Boolean} 
+     * {Boolean}
      */
     ascending: true,
- 
+
     /**
      * Constructor: OpenLayers.Control.LayerSwitcher
-     * 
+     *
      * Parameters:
      * options - {Object}
      */
     initialize: function(options) {
         OpenLayers.Control.prototype.initialize.apply(this, arguments);
         this.layerStates = [];
-        
-        if(this.roundedCorner) {
-            OpenLayers.Console.warn('roundedCorner option is deprecated');
-        }
     },
 
     /**
-     * APIMethod: destroy 
-     */    
+     * APIMethod: destroy
+     */
     destroy: function() {
-        
-        //clear out layers info and unregister their events 
+
+        //clear out layers info and unregister their events
         this.clearLayersArray("base");
         this.clearLayersArray("data");
-        
+
         this.map.events.un({
             buttonclick: this.onButtonClick,
             addlayer: this.redraw,
@@ -144,15 +120,15 @@ OpenLayers.Control.LayerSwitcher =
             scope: this
         });
         this.events.unregister("buttonclick", this, this.onButtonClick);
-        
+
         OpenLayers.Control.prototype.destroy.apply(this, arguments);
     },
 
-    /** 
+    /**
      * Method: setMap
      *
      * Properties:
-     * map - {<OpenLayers.Map>} 
+     * map - {<OpenLayers.Map>}
      */
     setMap: function(map) {
         OpenLayers.Control.prototype.setMap.apply(this, arguments);
@@ -176,9 +152,9 @@ OpenLayers.Control.LayerSwitcher =
      * Method: draw
      *
      * Returns:
-     * {DOMElement} A reference to the DIV DOMElement containing the 
+     * {DOMElement} A reference to the DIV DOMElement containing the
      *     switcher tabs.
-     */  
+     */
     draw: function() {
         OpenLayers.Control.prototype.draw.apply(this);
 
@@ -191,7 +167,7 @@ OpenLayers.Control.LayerSwitcher =
         }
 
         // populate div with current info
-        this.redraw();    
+        this.redraw();
 
         return this.div;
     },
@@ -224,13 +200,13 @@ OpenLayers.Control.LayerSwitcher =
         }
     },
 
-    /** 
+    /**
      * Method: clearLayersArray
      * User specifies either "base" or "data". we then clear all the
      *     corresponding listeners, the div, and reinitialize a new array.
-     * 
+     *
      * Parameters:
-     * layersType - {String}  
+     * layersType - {String}
      */
     clearLayersArray: function(layersType) {
         this[layersType + "LayersDiv"].innerHTML = "";
@@ -241,54 +217,53 @@ OpenLayers.Control.LayerSwitcher =
     /**
      * Method: checkRedraw
      * Checks if the layer state has changed since the last redraw() call.
-     * 
+     *
      * Returns:
-     * {Boolean} The layer state changed since the last redraw() call. 
+     * {Boolean} The layer state changed since the last redraw() call.
      */
     checkRedraw: function() {
-        var redraw = false;
         if ( !this.layerStates.length ||
              (this.map.layers.length != this.layerStates.length) ) {
-            redraw = true;
-        } else {
-            for (var i=0, len=this.layerStates.length; i<len; i++) {
-                var layerState = this.layerStates[i];
-                var layer = this.map.layers[i];
-                if ( (layerState.name != layer.name) || 
-                     (layerState.inRange != layer.inRange) || 
-                     (layerState.id != layer.id) || 
-                     (layerState.visibility != layer.visibility) ) {
-                    redraw = true;
-                    break;
-                }    
+            return true;
+        }
+
+        for (var i = 0, len = this.layerStates.length; i < len; i++) {
+            var layerState = this.layerStates[i];
+            var layer = this.map.layers[i];
+            if ( (layerState.name != layer.name) ||
+                 (layerState.inRange != layer.inRange) ||
+                 (layerState.id != layer.id) ||
+                 (layerState.visibility != layer.visibility) ) {
+                return true;
             }
-        }    
-        return redraw;
+        }
+
+        return false;
     },
-    
-    /** 
+
+    /**
      * Method: redraw
      * Goes through and takes the current state of the Map and rebuilds the
-     *     control to display that state. Groups base layers into a 
+     *     control to display that state. Groups base layers into a
      *     radio-button group and lists each data layer with a checkbox.
      *
-     * Returns: 
+     * Returns:
      * {DOMElement} A reference to the DIV DOMElement containing the control
-     */  
+     */
     redraw: function() {
-        //if the state hasn't changed since last redraw, no need 
+        //if the state hasn't changed since last redraw, no need
         // to do anything. Just return the existing div.
-        if (!this.checkRedraw()) { 
-            return this.div; 
-        } 
+        if (!this.checkRedraw()) {
+            return this.div;
+        }
 
-        //clear out previous layers 
+        //clear out previous layers
         this.clearLayersArray("base");
         this.clearLayersArray("data");
-        
+
         var containsOverlays = false;
         var containsBaseLayers = false;
-        
+
         // Save state -- for checking layer if the map state changed.
         // We save this before redrawing, because in the process of redrawing
         // we will trigger more visibility changes, and we want to not redraw
@@ -298,12 +273,12 @@ OpenLayers.Control.LayerSwitcher =
         for (var i=0; i <len; i++) {
             var layer = this.map.layers[i];
             this.layerStates[i] = {
-                'name': layer.name, 
+                'name': layer.name,
                 'visibility': layer.visibility,
                 'inRange': layer.inRange,
                 'id': layer.id
             };
-        }    
+        }
 
         var layers = this.map.layers.slice();
         if (!this.ascending) { layers.reverse(); }
@@ -317,16 +292,22 @@ OpenLayers.Control.LayerSwitcher =
                     containsBaseLayers = true;
                 } else {
                     containsOverlays = true;
-                }    
+                }
 
                 // only check a baselayer if it is *the* baselayer, check data
                 //  layers if they are visible
                 var checked = (baseLayer) ? (layer == this.map.baseLayer)
                                           : layer.getVisibility();
-    
+
                 // create input element
-                var inputElem = document.createElement("input");
-                inputElem.id = this.id + "_input_" + layer.name;
+                var inputElem = document.createElement("input"),
+                    // The input shall have an id attribute so we can use
+                    // labels to interact with them.
+                    inputId = OpenLayers.Util.createUniqueID(
+                        this.id + "_input_"
+                    );
+
+                inputElem.id = inputId;
                 inputElem.name = (baseLayer) ? this.id + "_baseLayers" : layer.name;
                 inputElem.type = (baseLayer) ? "radio" : "checkbox";
                 inputElem.value = layer.name;
@@ -339,9 +320,11 @@ OpenLayers.Control.LayerSwitcher =
                 if (!baseLayer && !layer.inRange) {
                     inputElem.disabled = true;
                 }
-                
+
                 // create span
                 var labelSpan = document.createElement("label");
+                // this isn't the DOM attribute 'for', but an arbitrary name we
+                // use to find the appropriate input element in <onButtonClick>
                 labelSpan["for"] = inputElem.id;
                 OpenLayers.Element.addClass(labelSpan, "labelSpan olButton");
                 labelSpan._layer = layer.id;
@@ -350,12 +333,12 @@ OpenLayers.Control.LayerSwitcher =
                     labelSpan.style.color = "gray";
                 }
                 labelSpan.innerHTML = layer.name;
-                labelSpan.style.verticalAlign = (baseLayer) ? "bottom" 
+                labelSpan.style.verticalAlign = (baseLayer) ? "bottom"
                                                             : "baseline";
                 // create line break
                 var br = document.createElement("br");
-    
-                
+
+
                 var groupArray = (baseLayer) ? this.baseLayers
                                              : this.dataLayers;
                 groupArray.push({
@@ -363,8 +346,8 @@ OpenLayers.Control.LayerSwitcher =
                     'inputElem': inputElem,
                     'labelSpan': labelSpan
                 });
-                                                     
-    
+
+
                 var groupDiv = (baseLayer) ? this.baseLayersDiv
                                            : this.dataLayersDiv;
                 groupDiv.appendChild(inputElem);
@@ -374,24 +357,24 @@ OpenLayers.Control.LayerSwitcher =
         }
 
         // if no overlays, dont display the overlay label
-        this.dataLbl.style.display = (containsOverlays) ? "" : "none";        
-        
+        this.dataLbl.style.display = (containsOverlays) ? "" : "none";
+
         // if no baselayers, dont display the baselayer label
-        this.baseLbl.style.display = (containsBaseLayers) ? "" : "none";        
+        this.baseLbl.style.display = (containsBaseLayers) ? "" : "none";
 
         return this.div;
     },
 
-    /** 
+    /**
      * Method: updateMap
      * Cycles through the loaded data and base layer input arrays and makes
-     *     the necessary calls to the Map object such that that the map's 
-     *     visual state corresponds to what the user has selected in 
+     *     the necessary calls to the Map object such that that the map's
+     *     visual state corresponds to what the user has selected in
      *     the control.
      */
     updateMap: function() {
 
-        // set the newly selected base layer        
+        // set the newly selected base layer
         for(var i=0, len=this.baseLayers.length; i<len; i++) {
             var layerEntry = this.baseLayers[i];
             if (layerEntry.inputElem.checked) {
@@ -401,18 +384,18 @@ OpenLayers.Control.LayerSwitcher =
 
         // set the correct visibilities for the overlays
         for(var i=0, len=this.dataLayers.length; i<len; i++) {
-            var layerEntry = this.dataLayers[i];   
+            var layerEntry = this.dataLayers[i];
             layerEntry.layer.setVisibility(layerEntry.inputElem.checked);
         }
 
     },
 
-    /** 
+    /**
      * Method: maximizeControl
      * Set up the labels and divs for the control
-     * 
+     *
      * Parameters:
-     * e - {Event} 
+     * e - {Event}
      */
     maximizeControl: function(e) {
 
@@ -424,17 +407,17 @@ OpenLayers.Control.LayerSwitcher =
         this.showControls(false);
 
         if (e != null) {
-            OpenLayers.Event.stop(e);                                            
+            OpenLayers.Event.stop(e);
         }
     },
-    
-    /** 
+
+    /**
      * Method: minimizeControl
-     * Hide all the contents of the control, shrink the size, 
+     * Hide all the contents of the control, shrink the size,
      *     add the maximize icon
      *
      * Parameters:
-     * e - {Event} 
+     * e - {Event}
      */
     minimizeControl: function(e) {
 
@@ -448,7 +431,7 @@ OpenLayers.Control.LayerSwitcher =
         this.showControls(true);
 
         if (e != null) {
-            OpenLayers.Event.stop(e);                                            
+            OpenLayers.Event.stop(e);
         }
     },
 
@@ -456,7 +439,7 @@ OpenLayers.Control.LayerSwitcher =
      * Method: showControls
      * Hide/Show all LayerSwitcher controls depending on whether we are
      *     minimized or not
-     * 
+     *
      * Parameters:
      * minimize - {Boolean}
      */
@@ -467,14 +450,14 @@ OpenLayers.Control.LayerSwitcher =
 
         this.layersDiv.style.display = minimize ? "none" : "";
     },
-    
-    /** 
+
+    /**
      * Method: loadContents
      * Set up the labels and divs for the control
      */
     loadContents: function() {
 
-        // layers list div        
+        // layers list div
         this.layersDiv = document.createElement("div");
         this.layersDiv.id = this.id + "_layersDiv";
         OpenLayers.Element.addClass(this.layersDiv, "layersDiv");
@@ -482,14 +465,14 @@ OpenLayers.Control.LayerSwitcher =
         this.baseLbl = document.createElement("div");
         this.baseLbl.innerHTML = OpenLayers.i18n("Base Layer");
         OpenLayers.Element.addClass(this.baseLbl, "baseLbl");
-        
+
         this.baseLayersDiv = document.createElement("div");
         OpenLayers.Element.addClass(this.baseLayersDiv, "baseLayersDiv");
 
         this.dataLbl = document.createElement("div");
         this.dataLbl.innerHTML = OpenLayers.i18n("Overlays");
         OpenLayers.Element.addClass(this.dataLbl, "dataLbl");
-        
+
         this.dataLayersDiv = document.createElement("div");
         OpenLayers.Element.addClass(this.dataLayersDiv, "dataLayersDiv");
 
@@ -503,46 +486,36 @@ OpenLayers.Control.LayerSwitcher =
             this.layersDiv.appendChild(this.dataLayersDiv);
             this.layersDiv.appendChild(this.baseLbl);
             this.layersDiv.appendChild(this.baseLayersDiv);
-        }    
- 
-        this.div.appendChild(this.layersDiv);
-
-        if(this.roundedCorner) {
-            OpenLayers.Rico.Corner.round(this.div, {
-                corners: "tl bl",
-                bgColor: "transparent",
-                color: this.roundedCornerColor,
-                blend: false
-            });
-            OpenLayers.Rico.Corner.changeOpacity(this.layersDiv, 0.75);
         }
 
+        this.div.appendChild(this.layersDiv);
+
         // maximize button div
         var img = OpenLayers.Util.getImageLocation('layer-switcher-maximize.png');
         this.maximizeDiv = OpenLayers.Util.createAlphaImageDiv(
-                                    "OpenLayers_Control_MaximizeDiv", 
-                                    null, 
-                                    null, 
-                                    img, 
+                                    "OpenLayers_Control_MaximizeDiv",
+                                    null,
+                                    null,
+                                    img,
                                     "absolute");
         OpenLayers.Element.addClass(this.maximizeDiv, "maximizeDiv olButton");
         this.maximizeDiv.style.display = "none";
-        
+
         this.div.appendChild(this.maximizeDiv);
 
         // minimize button div
         var img = OpenLayers.Util.getImageLocation('layer-switcher-minimize.png');
         this.minimizeDiv = OpenLayers.Util.createAlphaImageDiv(
-                                    "OpenLayers_Control_MinimizeDiv", 
-                                    null, 
-                                    null, 
-                                    img, 
+                                    "OpenLayers_Control_MinimizeDiv",
+                                    null,
+                                    null,
+                                    img,
                                     "absolute");
         OpenLayers.Element.addClass(this.minimizeDiv, "minimizeDiv olButton");
         this.minimizeDiv.style.display = "none";
 
         this.div.appendChild(this.minimizeDiv);
     },
-    
+
     CLASS_NAME: "OpenLayers.Control.LayerSwitcher"
 });
diff --git a/lib/OpenLayers/Control/Measure.js b/lib/OpenLayers/Control/Measure.js
index bae9df3..03c22b8 100644
--- a/lib/OpenLayers/Control/Measure.js
+++ b/lib/OpenLayers/Control/Measure.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -17,7 +17,7 @@
  */
 OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
 
-    /** 
+    /**
      * APIProperty: events
      * {<OpenLayers.Events>} Events instance for listeners and triggering
      *     control specific events.
@@ -41,29 +41,28 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
      * APIProperty: handlerOptions
      * {Object} Used to set non-default properties on the control's handler
      */
-    handlerOptions: null,
-    
+
     /**
      * Property: callbacks
      * {Object} The functions that are sent to the handler for callback
      */
     callbacks: null,
-    
+
     /**
-     * Property: displaySystem
+     * APIProperty: displaySystem
      * {String} Display system for output measurements.  Supported values
      *     are 'english', 'metric', and 'geographic'.  Default is 'metric'.
      */
     displaySystem: 'metric',
-    
+
     /**
-     * Property: geodesic
+     * APIProperty: geodesic
      * {Boolean} Calculate geodesic metrics instead of planar metrics.  This
      *     requires that geometries can be transformed into Geographic/WGS84
      *     (if that is not already the map projection).  Default is false.
      */
     geodesic: false,
-    
+
     /**
      * Property: displaySystemUnits
      * {Object} Units for various measurement systems.  Values are arrays
@@ -112,10 +111,10 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
 
     /**
      * Constructor: OpenLayers.Control.Measure
-     * 
+     *
      * Parameters:
-     * handler - {<OpenLayers.Handler>} 
-     * options - {Object} 
+     * handler - {<OpenLayers.Handler>}
+     * options - {Object}
      */
     initialize: function(handler, options) {
         OpenLayers.Control.prototype.initialize.apply(this, [options]);
@@ -126,14 +125,14 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
         }
         this.callbacks = OpenLayers.Util.extend(callbacks, this.callbacks);
 
-        // let the handler options override, so old code that passes 'persist' 
+        // let the handler options override, so old code that passes 'persist'
         // directly to the handler does not need an update
         this.handlerOptions = OpenLayers.Util.extend(
             {persist: this.persist}, this.handlerOptions
         );
         this.handler = new handler(this, this.callbacks, this.handlerOptions);
     },
-    
+
     /**
      * APIMethod: deactivate
      */
@@ -165,7 +164,7 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
             delete this.callbacks.modify;
         }
     },
-    
+
     /**
      * Method: updateHandler
      *
@@ -195,7 +194,7 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
         this.cancelDelay();
         this.measure(geometry, "measure");
     },
-    
+
     /**
      * Method: measurePartial
      * Called each time a new point is added to the measurement sketch.
@@ -226,9 +225,11 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
     /**
      * Method: measureImmediate
      * Called each time the measurement sketch is modified.
-     * 
-     * Parameters: point - {<OpenLayers.Geometry.Point>} The point at the
-     * mouseposition. feature - {<OpenLayers.Feature.Vector>} The sketch feature.
+     *
+     * Parameters:
+     * point - {<OpenLayers.Geometry.Point>} The point at the mouse position.
+     * feature - {<OpenLayers.Feature.Vector>} The sketch feature.
+     * drawing - {Boolean} Indicates whether we're currently drawing.
      */
     measureImmediate : function(point, feature, drawing) {
         if (drawing && !this.handler.freehandMode(this.handler.evt)) {
@@ -271,7 +272,7 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
             geometry: geometry
         });
     },
-    
+
     /**
      * Method: getBestArea
      * Based on the <displaySystem> returns the area of a geometry.
@@ -295,7 +296,7 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
         }
         return [area, unit];
     },
-    
+
     /**
      * Method: getArea
      *
@@ -322,7 +323,7 @@ OpenLayers.Control.Measure = OpenLayers.Class(OpenLayers.Control, {
         }
         return area;
     },
-    
+
     /**
      * Method: getBestLength
      * Based on the <displaySystem> returns the length of a geometry.
diff --git a/lib/OpenLayers/Control/ModifyFeature.js b/lib/OpenLayers/Control/ModifyFeature.js
index 4dc2347..e574608 100644
--- a/lib/OpenLayers/Control/ModifyFeature.js
+++ b/lib/OpenLayers/Control/ModifyFeature.js
@@ -1,11 +1,11 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
- * @requires OpenLayers/Control/DragFeature.js
- * @requires OpenLayers/Control/SelectFeature.js
+ * @requires OpenLayers/Control.js
+ * @requires OpenLayers/Handler/Drag.js
  * @requires OpenLayers/Handler/Keyboard.js
  */
 
@@ -23,6 +23,13 @@
 OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
 
     /**
+     * APIProperty: documentDrag
+     * {Boolean} If set to true, dragging vertices will continue even if the
+     *     mouse cursor leaves the map viewport. Default is false.
+     */
+    documentDrag: false,
+
+    /**
      * APIProperty: geometryTypes
      * {Array(String)} To restrict modification to a limited set of geometry
      *     types, send a list of strings corresponding to the geometry class
@@ -43,7 +50,7 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      *      Default is true.
      */
     toggle: true,
-    
+
     /**
      * APIProperty: standalone
      * {Boolean} Set to true to create a control without SelectFeature
@@ -60,20 +67,26 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      * {<OpenLayers.Layer.Vector>}
      */
     layer: null,
-    
+
     /**
      * Property: feature
      * {<OpenLayers.Feature.Vector>} Feature currently available for modification.
      */
     feature: null,
-    
+
+    /**
+     * Property: vertex
+     * {<OpenLayers.Feature.Vector>} Vertex currently being modified.
+     */
+    vertex: null,
+
     /**
      * Property: vertices
      * {Array(<OpenLayers.Feature.Vector>)} Verticies currently available
      *     for dragging.
      */
     vertices: null,
-    
+
     /**
      * Property: virtualVertices
      * {Array(<OpenLayers.Feature.Vector>)} Virtual vertices in the middle
@@ -82,23 +95,11 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
     virtualVertices: null,
 
     /**
-     * Property: selectControl
-     * {<OpenLayers.Control.SelectFeature>}
-     */
-    selectControl: null,
-    
-    /**
-     * Property: dragControl
-     * {<OpenLayers.Control.DragFeature>}
-     */
-    dragControl: null,
-    
-    /**
      * Property: handlers
      * {Object}
      */
     handlers: null,
-    
+
     /**
      * APIProperty: deleteCodes
      * {Array(Integer)} Keycodes for deleting verticies.  Set to null to disable
@@ -113,7 +114,7 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      * {Object} A symbolizer to be used for virtual vertices.
      */
     virtualStyle: null,
-    
+
     /**
      * APIProperty: vertexRenderIntent
      * {String} The renderIntent to use for vertices. If no <virtualStyle> is
@@ -225,63 +226,50 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
         if(!(OpenLayers.Util.isArray(this.deleteCodes))) {
             this.deleteCodes = [this.deleteCodes];
         }
-        var control = this;
-
-        // configure the select control
-        var selectOptions = {
-            geometryTypes: this.geometryTypes,
-            clickout: this.clickout,
-            toggle: this.toggle,
-            onBeforeSelect: this.beforeSelectFeature,
-            onSelect: this.selectFeature,
-            onUnselect: this.unselectFeature,
-            scope: this
-        };
-        if(this.standalone === false) {
-            this.selectControl = new OpenLayers.Control.SelectFeature(
-                layer, selectOptions
-            );
-        }
-
-        // configure the drag control
-        var dragOptions = {
-            geometryTypes: ["OpenLayers.Geometry.Point"],
-            onStart: function(feature, pixel) {
-                control.dragStart.apply(control, [feature, pixel]);
+        
+        // configure the drag handler
+        var dragCallbacks = {
+            down: function(pixel) {
+                this.vertex = null;
+                var feature = this.layer.getFeatureFromEvent(
+                        this.handlers.drag.evt);
+                if (feature) {
+                    this.dragStart(feature);
+                } else if (this.clickout) {
+                    this._unselect = this.feature;
+                }
             },
-            onDrag: function(feature, pixel) {
-                control.dragVertex.apply(control, [feature, pixel]);
+            move: function(pixel) {
+                delete this._unselect;
+                if (this.vertex) {
+                    this.dragVertex(this.vertex, pixel);
+                }
             },
-            onComplete: function(feature) {
-                control.dragComplete.apply(control, [feature]);
+            up: function() {
+                this.handlers.drag.stopDown = false;
+                if (this._unselect) {
+                    this.unselectFeature(this._unselect);
+                    delete this._unselect;
+                }
             },
-            featureCallbacks: {
-                over: function(feature) {
-                    /**
-                     * In normal mode, the feature handler is set up to allow
-                     * dragging of all points.  In standalone mode, we only
-                     * want to allow dragging of sketch vertices and virtual
-                     * vertices - or, in the case of a modifiable point, the
-                     * point itself.
-                     */
-                    if(control.standalone !== true || feature._sketch ||
-                       control.feature === feature) {
-                        control.dragControl.overFeature.apply(
-                            control.dragControl, [feature]);
-                    }
+            done: function(pixel) {
+                if (this.vertex) {
+                    this.dragComplete(this.vertex);
                 }
             }
         };
-        this.dragControl = new OpenLayers.Control.DragFeature(
-            layer, dragOptions
-        );
+        var dragOptions = {
+            documentDrag: this.documentDrag,
+            stopDown: false
+        };
 
         // configure the keyboard handler
         var keyboardOptions = {
             keydown: this.handleKeypress
         };
         this.handlers = {
-            keyboard: new OpenLayers.Handler.Keyboard(this, keyboardOptions)
+            keyboard: new OpenLayers.Handler.Keyboard(this, keyboardOptions),
+            drag: new OpenLayers.Handler.Drag(this, dragCallbacks, dragOptions)
         };
     },
 
@@ -290,9 +278,14 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      * Take care of things that are not handled in superclass.
      */
     destroy: function() {
+        if (this.map) {
+            this.map.events.un({
+                "removelayer": this.handleMapEvents,
+                "changelayer": this.handleMapEvents,
+                scope: this
+            });
+        }
         this.layer = null;
-        this.standalone || this.selectControl.destroy();
-        this.dragControl.destroy();
         OpenLayers.Control.prototype.destroy.apply(this, []);
     },
 
@@ -304,8 +297,14 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      * {Boolean} Successfully activated the control.
      */
     activate: function() {
-        return ((this.standalone || this.selectControl.activate()) &&
-                this.handlers.keyboard.activate() &&
+        this.moveLayerToTop();
+        this.map.events.on({
+            "removelayer": this.handleMapEvents,
+            "changelayer": this.handleMapEvents,
+            scope: this
+        });
+        return (this.handlers.keyboard.activate() &&
+                this.handlers.drag.activate() &&
                 OpenLayers.Control.prototype.activate.apply(this, arguments));
     },
 
@@ -320,29 +319,26 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
         var deactivated = false;
         // the return from the controls is unimportant in this case
         if(OpenLayers.Control.prototype.deactivate.apply(this, arguments)) {
+            this.moveLayerBack();
+            this.map.events.un({
+                "removelayer": this.handleMapEvents,
+                "changelayer": this.handleMapEvents,
+                scope: this
+            });
             this.layer.removeFeatures(this.vertices, {silent: true});
             this.layer.removeFeatures(this.virtualVertices, {silent: true});
             this.vertices = [];
-            this.dragControl.deactivate();
+            this.handlers.drag.deactivate();
+            this.handlers.keyboard.deactivate();
             var feature = this.feature;
-            var valid = feature && feature.geometry && feature.layer;
-            if(this.standalone === false) {
-                if(valid) {
-                    this.selectControl.unselect.apply(this.selectControl,
-                                                      [feature]);
-                }
-                this.selectControl.deactivate();
-            } else {
-                if(valid) {
-                    this.unselectFeature(feature);
-                }
+            if (feature && feature.geometry && feature.layer) {
+                this.unselectFeature(feature);
             }
-            this.handlers.keyboard.deactivate();
             deactivated = true;
         }
         return deactivated;
     },
-    
+
     /**
      * Method: beforeSelectFeature
      * Called before a feature is selected.
@@ -359,19 +355,28 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
     /**
      * APIMethod: selectFeature
      * Select a feature for modification in standalone mode. In non-standalone
-     * mode, this method is called when the select feature control selects a
-     * feature. Register a listener to the beforefeaturemodified event and
-     * return false to prevent feature modification.
+     * mode, this method is called when a feature is selected by clicking.
+     * Register a listener to the beforefeaturemodified event and return false
+     * to prevent feature modification.
      *
      * Parameters:
      * feature - {<OpenLayers.Feature.Vector>} the selected feature.
      */
     selectFeature: function(feature) {
-        if (!this.standalone || this.beforeSelectFeature(feature) !== false) {
+        if (this.feature === feature ||
+           (this.geometryTypes && OpenLayers.Util.indexOf(this.geometryTypes,
+           feature.geometry.CLASS_NAME) == -1)) {
+            return;
+        }
+        if (this.beforeSelectFeature(feature) !== false) {
+            if (this.feature) {
+                this.unselectFeature(this.feature);
+            }
             this.feature = feature;
+            this.layer.selectedFeatures.push(feature);
+            this.layer.drawFeature(feature, 'select');
             this.modified = false;
             this.resetVertices();
-            this.dragControl.activate();
             this.onModificationStart(this.feature);
         }
         // keep track of geometry modifications
@@ -401,8 +406,9 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
             this.layer.destroyFeatures([this.radiusHandle], {silent: true});
             delete this.radiusHandle;
         }
+        this.layer.drawFeature(this.feature, 'default');
         this.feature = null;
-        this.dragControl.deactivate();
+        OpenLayers.Util.removeItem(this.layer.selectedFeatures, feature);
         this.onModificationEnd(feature);
         this.layer.events.triggerEvent("afterfeaturemodified", {
             feature: feature,
@@ -410,64 +416,48 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
         });
         this.modified = false;
     },
-
+    
+    
     /**
      * Method: dragStart
-     * Called by the drag feature control with before a feature is dragged.
-     *     This method is used to differentiate between points and vertices
-     *     of higher order geometries.  This respects the <geometryTypes>
-     *     property and forces a select of points when the drag control is
-     *     already active (and stops events from propagating to the select
-     *     control).
+     * Called by the drag handler before a feature is dragged.  This method is
+     *     used to differentiate between points and vertices
+     *     of higher order geometries.
      *
      * Parameters:
      * feature - {<OpenLayers.Feature.Vector>} The point or vertex about to be
      *     dragged.
-     * pixel - {<OpenLayers.Pixel>} Pixel location of the mouse event.
      */
-    dragStart: function(feature, pixel) {
-        // only change behavior if the feature is not in the vertices array
-        if(feature != this.feature && !feature.geometry.parent &&
-           feature != this.dragHandle && feature != this.radiusHandle) {
-            if(this.standalone === false && this.feature) {
-                // unselect the currently selected feature
-                this.selectControl.clickFeature.apply(this.selectControl,
-                                                      [this.feature]);
-            }
-            // check any constraints on the geometry type
-            if(this.geometryTypes == null ||
-               OpenLayers.Util.indexOf(this.geometryTypes,
-                                       feature.geometry.CLASS_NAME) != -1) {
-                // select the point
-                this.standalone || this.selectControl.clickFeature.apply(
-                                            this.selectControl, [feature]);
-                /**
-                 * TBD: These lines improve workflow by letting the user
-                 *     immediately start dragging after the mouse down.
-                 *     However, it is very ugly to be messing with controls
-                 *     and their handlers in this way.  I'd like a better
-                 *     solution if the workflow change is necessary.
-                 */
-                // prepare the point for dragging
-                this.dragControl.overFeature.apply(this.dragControl,
-                                                   [feature]);
-                this.dragControl.lastPixel = pixel;
-                this.dragControl.handlers.drag.started = true;
-                this.dragControl.handlers.drag.start = pixel;
-                this.dragControl.handlers.drag.last = pixel;
+    dragStart: function(feature) {
+        var isPoint = feature.geometry.CLASS_NAME ==
+                'OpenLayers.Geometry.Point';
+        if (!this.standalone &&
+                ((!feature._sketch && isPoint) || !feature._sketch)) {
+            if (this.toggle && this.feature === feature) {
+                // mark feature for unselection
+                this._unselect = feature;
             }
+            this.selectFeature(feature);
+        }
+        if (feature._sketch || isPoint) {
+            // feature is a drag or virtual handle or point
+            this.vertex = feature;
+            this.handlers.drag.stopDown = true;
         }
     },
-    
+
     /**
      * Method: dragVertex
-     * Called by the drag feature control with each drag move of a vertex.
+     * Called by the drag handler with each drag move of a vertex.
      *
      * Parameters:
      * vertex - {<OpenLayers.Feature.Vector>} The vertex being dragged.
      * pixel - {<OpenLayers.Pixel>} Pixel location of the mouse event.
      */
     dragVertex: function(vertex, pixel) {
+        var pos = this.map.getLonLatFromViewPortPx(pixel);
+        var geom = vertex.geometry;
+        geom.move(pos.lon - geom.x, pos.lat - geom.y);
         this.modified = true;
         /**
          * Five cases:
@@ -479,9 +469,6 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
          */
         if(this.feature.geometry.CLASS_NAME == "OpenLayers.Geometry.Point") {
             // dragging a simple point
-            if(this.feature != vertex) {
-                this.feature = vertex;
-            }
             this.layer.events.triggerEvent("vertexmodified", {
                 vertex: vertex.geometry,
                 feature: this.feature,
@@ -518,7 +505,7 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
                 this.virtualVertices = [];
             }
             this.layer.drawFeature(this.feature, this.standalone ? undefined :
-                                            this.selectControl.renderIntent);
+                                            'select');
         }
         // keep the vertex on top so it gets the mouseout after dragging
         // this should be removed in favor of an option to draw under or
@@ -528,7 +515,7 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
     
     /**
      * Method: dragComplete
-     * Called by the drag feature control when the feature dragging is complete.
+     * Called by the drag handler when the feature dragging is complete.
      *
      * Parameters:
      * vertex - {<OpenLayers.Feature.Vector>} The vertex being dragged.
@@ -564,16 +551,6 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      * Method: resetVertices
      */
     resetVertices: function() {
-        // if coming from a drag complete we're about to destroy the vertex
-        // that was just dragged. For that reason, the drag feature control
-        // will never detect a mouse-out on that vertex, meaning that the drag
-        // handler won't be deactivated. This can cause errors because the drag
-        // feature control still has a feature to drag but that feature is
-        // destroyed. To prevent this, we call outFeature on the drag feature
-        // control if the control actually has a feature to drag.
-        if(this.dragControl.feature) {
-            this.dragControl.outFeature(this.dragControl.feature);
-        }
         if(this.vertices.length > 0) {
             this.layer.removeFeatures(this.vertices, {silent: true});
             this.vertices = [];
@@ -624,11 +601,10 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
         // check for delete key
         if(this.feature &&
            OpenLayers.Util.indexOf(this.deleteCodes, code) != -1) {
-            var vertex = this.dragControl.feature;
-            if(vertex &&
-               OpenLayers.Util.indexOf(this.vertices, vertex) != -1 &&
-               !this.dragControl.handlers.drag.dragging &&
-               vertex.geometry.parent) {
+            var vertex = this.layer.getFeatureFromEvent(this.handlers.drag.evt);
+            if (vertex &&
+                    OpenLayers.Util.indexOf(this.vertices, vertex) != -1 &&
+                    !this.handlers.drag.dragging && vertex.geometry.parent) {
                 // remove the vertex
                 vertex.geometry.parent.removeComponent(vertex.geometry);
                 this.layer.events.triggerEvent("vertexremoved", {
@@ -637,8 +613,7 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
                     pixel: evt.xy
                 });
                 this.layer.drawFeature(this.feature, this.standalone ?
-                                       undefined :
-                                       this.selectControl.renderIntent);
+                                       undefined : 'select');
                 this.modified = true;
                 this.resetVertices();
                 this.setFeatureState();
@@ -792,11 +767,49 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
      * map - {<OpenLayers.Map>} The control's map.
      */
     setMap: function(map) {
-        this.standalone || this.selectControl.setMap(map);
-        this.dragControl.setMap(map);
+        this.handlers.drag.setMap(map);
         OpenLayers.Control.prototype.setMap.apply(this, arguments);
     },
 
+    /**
+     * Method: handleMapEvents
+     * 
+     * Parameters:
+     * evt - {Object}
+     */
+    handleMapEvents: function(evt) {
+        if (evt.type == "removelayer" || evt.property == "order") {
+            this.moveLayerToTop();
+        }
+    },
+
+    /**
+     * Method: moveLayerToTop
+     * Moves the layer for this handler to the top, so mouse events can reach
+     * it.
+     */
+    moveLayerToTop: function() {
+        var index = Math.max(this.map.Z_INDEX_BASE['Feature'] - 1,
+            this.layer.getZIndex()) + 1;
+        this.layer.setZIndex(index);
+        
+    },
+
+    /**
+     * Method: moveLayerBack
+     * Moves the layer back to the position determined by the map's layers
+     * array.
+     */
+    moveLayerBack: function() {
+        var index = this.layer.getZIndex() - 1;
+        if (index >= this.map.Z_INDEX_BASE['Feature']) {
+            this.layer.setZIndex(index);
+        } else {
+            this.map.setLayerZIndex(this.layer,
+                this.map.getLayerIndex(this.layer));
+        }
+    },
+
     CLASS_NAME: "OpenLayers.Control.ModifyFeature"
 });
 
diff --git a/lib/OpenLayers/Control/MousePosition.js b/lib/OpenLayers/Control/MousePosition.js
index c3b9c41..0c88fcf 100644
--- a/lib/OpenLayers/Control/MousePosition.js
+++ b/lib/OpenLayers/Control/MousePosition.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -13,11 +13,23 @@
  * The MousePosition control displays geographic coordinates of the mouse
  * pointer, as it is moved about the map.
  *
+ * You can use the <prefix>- or <suffix>-properties to provide more information
+ * about the displayed coordinates to the user:
+ *
+ * (code)
+ *     var mousePositionCtrl = new OpenLayers.Control.MousePosition({
+ *         prefix: '<a target="_blank" ' +
+ *             'href="http://spatialreference.org/ref/epsg/4326/">' +
+ *             'EPSG:4326</a> coordinates: '
+ *         }
+ *     );
+ * (end code)
+ *
  * Inherits from:
  *  - <OpenLayers.Control>
  */
 OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
-    
+
     /**
      * APIProperty: autoActivate
      * {Boolean} Activate the control when it is added to a map.  Default is
@@ -25,50 +37,55 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
      */
     autoActivate: true,
 
-    /** 
+    /**
      * Property: element
-     * {DOMElement} 
+     * {DOMElement}
      */
     element: null,
-    
-    /** 
+
+    /**
      * APIProperty: prefix
-     * {String}
+     * {String} A string to be prepended to the current pointers coordinates
+     *     when it is rendered.  Defaults to the empty string ''.
      */
     prefix: '',
-    
-    /** 
+
+    /**
      * APIProperty: separator
-     * {String}
+     * {String} A string to be used to seperate the two coordinates from each
+     *     other.  Defaults to the string ', ', which will result in a
+     *     rendered coordinate of e.g. '42.12, 21.22'.
      */
     separator: ', ',
-    
-    /** 
+
+    /**
      * APIProperty: suffix
-     * {String}
+     * {String} A string to be appended to the current pointers coordinates
+     *     when it is rendered.  Defaults to the empty string ''.
      */
     suffix: '',
-    
-    /** 
+
+    /**
      * APIProperty: numDigits
-     * {Integer}
+     * {Integer} The number of digits each coordinate shall have when being
+     *     rendered, Defaults to 5.
      */
     numDigits: 5,
-    
-    /** 
+
+    /**
      * APIProperty: granularity
-     * {Integer} 
+     * {Integer}
      */
     granularity: 10,
 
     /**
-     * APIProperty: emptyString 
+     * APIProperty: emptyString
      * {String} Set this to some value to set when the mouse is outside the
      *     map.
      */
     emptyString: null,
-    
-    /** 
+
+    /**
      * Property: lastXy
      * {<OpenLayers.Pixel>}
      */
@@ -76,14 +93,14 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
 
     /**
      * APIProperty: displayProjection
-     * {<OpenLayers.Projection>} The projection in which the 
-     * mouse position is displayed
+     * {<OpenLayers.Projection>} The projection in which the mouse position is
+     *     displayed.
      */
-    displayProjection: null, 
-    
+    displayProjection: null,
+
     /**
      * Constructor: OpenLayers.Control.MousePosition
-     * 
+     *
      * Parameters:
      * options - {Object} Options for control.
      */
@@ -109,7 +126,7 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
             return false;
         }
     },
-    
+
     /**
      * APIMethod: deactivate
      */
@@ -127,7 +144,7 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
     /**
      * Method: draw
      * {DOMElement}
-     */    
+     */
     draw: function() {
         OpenLayers.Control.prototype.draw.apply(this, arguments);
 
@@ -136,12 +153,12 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
             this.div.top = "";
             this.element = this.div;
         }
-        
+
         return this.div;
     },
-   
+
     /**
-     * Method: redraw  
+     * Method: redraw
      */
     redraw: function(evt) {
 
@@ -160,18 +177,18 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
             }
 
             lonLat = this.map.getLonLatFromPixel(evt.xy);
-            if (!lonLat) { 
+            if (!lonLat) {
                 // map has not yet been properly initialized
                 return;
-            }    
+            }
             if (this.displayProjection) {
-                lonLat.transform(this.map.getProjectionObject(), 
+                lonLat.transform(this.map.getProjectionObject(),
                                  this.displayProjection );
-            }      
+            }
             this.lastXy = evt.xy;
-            
+
         }
-        
+
         var newHtml = this.formatOutput(lonLat);
 
         if (newHtml != this.element.innerHTML) {
@@ -200,7 +217,7 @@ OpenLayers.Control.MousePosition = OpenLayers.Class(OpenLayers.Control, {
         var newHtml =
             this.prefix +
             lonLat.lon.toFixed(digits) +
-            this.separator + 
+            this.separator +
             lonLat.lat.toFixed(digits) +
             this.suffix;
         return newHtml;
diff --git a/lib/OpenLayers/Control/NavToolbar.js b/lib/OpenLayers/Control/NavToolbar.js
index 241682f..b6bc2aa 100644
--- a/lib/OpenLayers/Control/NavToolbar.js
+++ b/lib/OpenLayers/Control/NavToolbar.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/Navigation.js b/lib/OpenLayers/Control/Navigation.js
index 11f1a05..d50e131 100644
--- a/lib/OpenLayers/Control/Navigation.js
+++ b/lib/OpenLayers/Control/Navigation.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -77,7 +77,9 @@ OpenLayers.Control.Navigation = OpenLayers.Class(OpenLayers.Control, {
     /**
      * Property: mouseWheelOptions
      * {Object} Options passed to the MouseWheel control (only useful if
-     *     <zoomWheelEnabled> is set to true)
+     *     <zoomWheelEnabled> is set to true). Default is no options for maps
+     *     with fractionalZoom set to true, otherwise
+     *     {cumulative: false, interval: 50, maxDelta: 6} 
      */
     mouseWheelOptions: null,
 
@@ -208,10 +210,15 @@ OpenLayers.Control.Navigation = OpenLayers.Class(OpenLayers.Control, {
                     {map: this.map, keyMask: this.zoomBoxKeyMask});
         this.dragPan.draw();
         this.zoomBox.draw();
+        var wheelOptions = this.map.fractionalZoom ? {} : {
+            cumulative: false,
+            interval: 50,
+            maxDelta: 6
+        };
         this.handlers.wheel = new OpenLayers.Handler.MouseWheel(
-                                    this, {"up"  : this.wheelUp,
-                                           "down": this.wheelDown},
-                                    this.mouseWheelOptions );
+            this, {up : this.wheelUp, down: this.wheelDown},
+            OpenLayers.Util.extend(wheelOptions, this.mouseWheelOptions)
+        );
         if (OpenLayers.Control.PinchZoom) {
             this.pinchZoom = new OpenLayers.Control.PinchZoom(
                 OpenLayers.Util.extend(
@@ -238,8 +245,7 @@ OpenLayers.Control.Navigation = OpenLayers.Class(OpenLayers.Control, {
      * evt - {Event} 
      */
     defaultDblClick: function (evt) {
-        var newCenter = this.map.getLonLatFromViewPortPx( evt.xy ); 
-        this.map.setCenter(newCenter, this.map.zoom + 1);
+        this.map.zoomTo(this.map.zoom + 1, evt.xy);
     },
 
     /**
@@ -249,8 +255,7 @@ OpenLayers.Control.Navigation = OpenLayers.Class(OpenLayers.Control, {
      * evt - {Event} 
      */
     defaultDblRightClick: function (evt) {
-        var newCenter = this.map.getLonLatFromViewPortPx( evt.xy ); 
-        this.map.setCenter(newCenter, this.map.zoom - 1);
+        this.map.zoomTo(this.map.zoom - 1, evt.xy);
     },
     
     /**
@@ -261,22 +266,17 @@ OpenLayers.Control.Navigation = OpenLayers.Class(OpenLayers.Control, {
      * deltaZ - {Integer}
      */
     wheelChange: function(evt, deltaZ) {
-        var currentZoom = this.map.getZoom();
-        var newZoom = this.map.getZoom() + Math.round(deltaZ);
+        if (!this.map.fractionalZoom) {
+            deltaZ =  Math.round(deltaZ);
+        }
+        var currentZoom = this.map.getZoom(),
+            newZoom = currentZoom + deltaZ;
         newZoom = Math.max(newZoom, 0);
         newZoom = Math.min(newZoom, this.map.getNumZoomLevels());
         if (newZoom === currentZoom) {
             return;
         }
-        var size    = this.map.getSize();
-        var deltaX  = size.w/2 - evt.xy.x;
-        var deltaY  = evt.xy.y - size.h/2;
-        var newRes  = this.map.baseLayer.getResolutionForZoom(newZoom);
-        var zoomPoint = this.map.getLonLatFromPixel(evt.xy);
-        var newCenter = new OpenLayers.LonLat(
-                            zoomPoint.lon + deltaX * newRes,
-                            zoomPoint.lat + deltaY * newRes );
-        this.map.setCenter( newCenter, newZoom );
+        this.map.zoomTo(newZoom, evt.xy);
     },
 
     /** 
diff --git a/lib/OpenLayers/Control/NavigationHistory.js b/lib/OpenLayers/Control/NavigationHistory.js
index 759e953..bf2f95a 100644
--- a/lib/OpenLayers/Control/NavigationHistory.js
+++ b/lib/OpenLayers/Control/NavigationHistory.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/OverviewMap.js b/lib/OpenLayers/Control/OverviewMap.js
index 86c0737..50b9300 100644
--- a/lib/OpenLayers/Control/OverviewMap.js
+++ b/lib/OpenLayers/Control/OverviewMap.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -7,6 +7,9 @@
  * @requires OpenLayers/Control.js
  * @requires OpenLayers/BaseTypes.js
  * @requires OpenLayers/Events/buttonclick.js
+ * @requires OpenLayers/Map.js
+ * @requires OpenLayers/Handler/Click.js
+ * @requires OpenLayers/Handler/Drag.js
  */
 
 /**
@@ -128,6 +131,20 @@ OpenLayers.Control.OverviewMap = OpenLayers.Class(OpenLayers.Control, {
     maximized: false,
 
     /**
+     * APIProperty: maximizeTitle
+     * {String}  This property is used for showing a tooltip over the  
+     * maximize div. Defaults to "" (no title).
+     */ 
+    maximizeTitle: "",
+
+    /**
+     * APIProperty: minimizeTitle
+     * {String}  This property is used for showing a tooltip over the  
+     * minimize div. Defaults to "" (no title).
+     */ 
+    minimizeTitle: "",
+
+    /**
      * Constructor: OpenLayers.Control.OverviewMap
      * Create a new overview map
      *
@@ -247,6 +264,9 @@ OpenLayers.Control.OverviewMap = OpenLayers.Class(OpenLayers.Control, {
                                         'absolute');
             this.maximizeDiv.style.display = 'none';
             this.maximizeDiv.className = this.displayClass + 'MaximizeButton olButton';
+            if (this.maximizeTitle) {
+                this.maximizeDiv.title = this.maximizeTitle;
+            }
             this.div.appendChild(this.maximizeDiv);
     
             // minimize button div
@@ -259,6 +279,9 @@ OpenLayers.Control.OverviewMap = OpenLayers.Class(OpenLayers.Control, {
                                         'absolute');
             this.minimizeDiv.style.display = 'none';
             this.minimizeDiv.className = this.displayClass + 'MinimizeButton olButton';
+            if (this.minimizeTitle) {
+                this.minimizeDiv.title = this.minimizeTitle;
+            }
             this.div.appendChild(this.minimizeDiv);            
             this.minimizeControl();
         } else {
@@ -398,8 +421,12 @@ OpenLayers.Control.OverviewMap = OpenLayers.Class(OpenLayers.Control, {
      * minimize - {Boolean} 
      */
     showToggle: function(minimize) {
-        this.maximizeDiv.style.display = minimize ? '' : 'none';
-        this.minimizeDiv.style.display = minimize ? 'none' : '';
+        if (this.maximizeDiv) {
+            this.maximizeDiv.style.display = minimize ? '' : 'none';
+        }
+        if (this.minimizeDiv) {
+            this.minimizeDiv.style.display = minimize ? 'none' : '';
+        }
     },
 
     /**
@@ -426,7 +453,7 @@ OpenLayers.Control.OverviewMap = OpenLayers.Class(OpenLayers.Control, {
      */
     isSuitableOverview: function() {
         var mapExtent = this.map.getExtent();
-        var maxExtent = this.map.maxExtent;
+        var maxExtent = this.map.getMaxExtent();
         var testExtent = new OpenLayers.Bounds(
                                 Math.max(mapExtent.left, maxExtent.left),
                                 Math.max(mapExtent.bottom, maxExtent.bottom),
diff --git a/lib/OpenLayers/Control/Pan.js b/lib/OpenLayers/Control/Pan.js
index 2850aa8..d7fcc07 100644
--- a/lib/OpenLayers/Control/Pan.js
+++ b/lib/OpenLayers/Control/Pan.js
@@ -1,10 +1,10 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
- * @requires OpenLayers/Control.js
+ * @requires OpenLayers/Control/Button.js
  */
 
 /**
@@ -15,7 +15,7 @@
  * Inherits from:
  *  - <OpenLayers.Control>
  */
-OpenLayers.Control.Pan = OpenLayers.Class(OpenLayers.Control, {
+OpenLayers.Control.Pan = OpenLayers.Class(OpenLayers.Control.Button, {
 
     /** 
      * APIProperty: slideFactor
@@ -41,14 +41,6 @@ OpenLayers.Control.Pan = OpenLayers.Class(OpenLayers.Control, {
     direction: null,
 
     /**
-     * Property: type
-     * {String} The type of <OpenLayers.Control> -- When added to a 
-     *     <Control.Panel>, 'type' is used by the panel to determine how to 
-     *     handle our events.
-     */
-    type: OpenLayers.Control.TYPE_BUTTON,
-
-    /**
      * Constructor: OpenLayers.Control.Pan 
      * Control which handles the panning (in any of the cardinal directions)
      *     of the map by a set px distance. 
@@ -70,26 +62,27 @@ OpenLayers.Control.Pan = OpenLayers.Class(OpenLayers.Control, {
      * Method: trigger
      */
     trigger: function(){
+        if (this.map) {
+            var getSlideFactor = OpenLayers.Function.bind(function (dim) {
+                return this.slideRatio ?
+                    this.map.getSize()[dim] * this.slideRatio :
+                    this.slideFactor;
+            }, this);
     
-        var getSlideFactor = OpenLayers.Function.bind(function (dim) {
-            return this.slideRatio ?
-                this.map.getSize()[dim] * this.slideRatio :
-                this.slideFactor;
-        }, this);
-
-        switch (this.direction) {
-            case OpenLayers.Control.Pan.NORTH: 
-                this.map.pan(0, -getSlideFactor("h"));
-                break;
-            case OpenLayers.Control.Pan.SOUTH: 
-                this.map.pan(0, getSlideFactor("h"));
-                break;
-            case OpenLayers.Control.Pan.WEST: 
-                this.map.pan(-getSlideFactor("w"), 0);
-                break;
-            case OpenLayers.Control.Pan.EAST: 
-                this.map.pan(getSlideFactor("w"), 0);
-                break;
+            switch (this.direction) {
+                case OpenLayers.Control.Pan.NORTH: 
+                    this.map.pan(0, -getSlideFactor("h"));
+                    break;
+                case OpenLayers.Control.Pan.SOUTH: 
+                    this.map.pan(0, getSlideFactor("h"));
+                    break;
+                case OpenLayers.Control.Pan.WEST: 
+                    this.map.pan(-getSlideFactor("w"), 0);
+                    break;
+                case OpenLayers.Control.Pan.EAST: 
+                    this.map.pan(getSlideFactor("w"), 0);
+                    break;
+            }   
         }
     },
 
diff --git a/lib/OpenLayers/Control/PanPanel.js b/lib/OpenLayers/Control/PanPanel.js
index a8369b5..eeedbd0 100644
--- a/lib/OpenLayers/Control/PanPanel.js
+++ b/lib/OpenLayers/Control/PanPanel.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/PanZoom.js b/lib/OpenLayers/Control/PanZoom.js
index 9941007..dd007cf 100644
--- a/lib/OpenLayers/Control/PanZoom.js
+++ b/lib/OpenLayers/Control/PanZoom.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/PanZoomBar.js b/lib/OpenLayers/Control/PanZoomBar.js
index 40b5990..ebf2964 100644
--- a/lib/OpenLayers/Control/PanZoomBar.js
+++ b/lib/OpenLayers/Control/PanZoomBar.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -99,6 +99,7 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, {
 
         this.map.events.un({
             "changebaselayer": this.redraw,
+            "updatesize": this.redraw,
             scope: this
         });
 
@@ -116,7 +117,11 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, {
      */
     setMap: function(map) {
         OpenLayers.Control.PanZoom.prototype.setMap.apply(this, arguments);
-        this.map.events.register("changebaselayer", this, this.redraw);
+        this.map.events.on({
+            "changebaselayer": this.redraw,
+            "updatesize": this.redraw,
+            scope: this
+        });
     },
 
     /** 
@@ -189,6 +194,7 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, {
     _addZoomBar:function(centered) {
         var imgLocation = OpenLayers.Util.getImageLocation("slider.png");
         var id = this.id + "_" + this.map.id;
+        var minZoom = this.map.getMinZoom();
         var zoomsToEnd = this.map.getNumZoomLevels() - 1 - this.map.getZoom();
         var slider = OpenLayers.Util.createAlphaImageDiv(id,
                        centered.add(-1, zoomsToEnd * this.zoomStopHeight), 
@@ -211,7 +217,7 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, {
         
         var sz = {
             w: this.zoomStopWidth,
-            h: this.zoomStopHeight * this.map.getNumZoomLevels()
+            h: this.zoomStopHeight * (this.map.getNumZoomLevels() - minZoom)
         };
         var imgLocation = OpenLayers.Util.getImageLocation("zoombar.png");
         var div = null;
@@ -242,7 +248,7 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, {
         this.map.events.register("zoomend", this, this.moveZoomBar);
 
         centered = centered.add(0, 
-            this.zoomStopHeight * this.map.getNumZoomLevels());
+            this.zoomStopHeight * (this.map.getNumZoomLevels() - minZoom));
         return centered; 
     },
     
diff --git a/lib/OpenLayers/Control/Panel.js b/lib/OpenLayers/Control/Panel.js
index 4db0fb4..150afa7 100644
--- a/lib/OpenLayers/Control/Panel.js
+++ b/lib/OpenLayers/Control/Panel.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/Permalink.js b/lib/OpenLayers/Control/Permalink.js
index 3654565..3d5d7a2 100644
--- a/lib/OpenLayers/Control/Permalink.js
+++ b/lib/OpenLayers/Control/Permalink.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -172,11 +172,18 @@ OpenLayers.Control.Permalink = OpenLayers.Class(OpenLayers.Control, {
     updateLink: function() {
         var separator = this.anchor ? '#' : '?';
         var href = this.base;
+        var anchor = null;
+        if (href.indexOf("#") != -1 && this.anchor == false) {
+            anchor = href.substring( href.indexOf("#"), href.length);
+        }
         if (href.indexOf(separator) != -1) {
             href = href.substring( 0, href.indexOf(separator) );
         }
-
-        href += separator + OpenLayers.Util.getParameterString(this.createParams());
+        var splits = href.split("#");
+        href = splits[0] + separator+ OpenLayers.Util.getParameterString(this.createParams());
+        if (anchor) {
+            href += anchor;
+        }
         if (this.anchor && !this.element) {
             window.location.href = href;
         }
diff --git a/lib/OpenLayers/Control/PinchZoom.js b/lib/OpenLayers/Control/PinchZoom.js
index 51dc44f..13c1104 100644
--- a/lib/OpenLayers/Control/PinchZoom.js
+++ b/lib/OpenLayers/Control/PinchZoom.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -22,12 +22,6 @@ OpenLayers.Control.PinchZoom = OpenLayers.Class(OpenLayers.Control, {
     type: OpenLayers.Control.TYPE_TOOL,
 
     /**
-     * Property: containerCenter
-     * {Object} Cached object representing the layer container center (in pixels).
-     */
-    containerCenter: null,
-
-    /**
      * Property: pinchOrigin
      * {Object} Cached object representing the pinch start (in pixels).
      */
@@ -45,8 +39,24 @@ OpenLayers.Control.PinchZoom = OpenLayers.Class(OpenLayers.Control, {
      *     true.
      */
     autoActivate: true,
+
+    /**
+     * APIProperty: preserveCenter
+     * {Boolean} Set this to true if you don't want the map center to change
+     *     while pinching. For example you may want to set preserveCenter to
+     *     true when the user location is being watched and you want to preserve
+     *     the user location at the center of the map even if he zooms in or
+     *     out using pinch. This property's value can be changed any time on an
+     *     existing instance. Default is false.
+     */
+    preserveCenter: false,
     
     /**
+     * APIProperty: handlerOptions
+     * {Object} Used to set non-default properties on the pinch handler
+     */
+
+    /**
      * Constructor: OpenLayers.Control.PinchZoom
      * Create a control for zooming with pinch gestures.  This works on devices
      *     with multi-touch support.
@@ -65,57 +75,6 @@ OpenLayers.Control.PinchZoom = OpenLayers.Class(OpenLayers.Control, {
     },
     
     /**
-     * APIMethod: activate
-     * Activate this control.  Must be called after the control is added to a 
-     * map.
-     *
-     * Returns:
-     * {Boolean} The control was successfully activated.
-     */
-    activate: function() {
-        var activated = OpenLayers.Control.prototype.activate.apply(this,arguments);
-        if (activated) {
-            this.map.events.on({
-                moveend: this.updateContainerCenter,
-                scope: this
-            });
-            this.updateContainerCenter();
-        }
-        return activated;
-    },
-
-    /**
-     * APIMethod: deactivate
-     * Deactivate this control.
-     *
-     * Returns:
-     * {Boolean} The control was successfully deactivated.
-     */
-    deactivate: function() {
-        var deactivated = OpenLayers.Control.prototype.deactivate.apply(this,arguments);
-        if (this.map && this.map.events) {
-            this.map.events.un({
-                moveend: this.updateContainerCenter,
-                scope: this
-            });
-        }
-        return deactivated;
-    },
-    
-    /**
-     * Method: updateContainerCenter
-     * Must be called each time the layer container moves.
-     */
-    updateContainerCenter: function() {
-        var container = this.map.layerContainerDiv;
-        // the layer container div is a square of 100px/100px
-        this.containerCenter = {
-            x: parseInt(container.style.left, 10) + 50,
-            y: parseInt(container.style.top, 10) + 50
-        };
-    },
-
-    /**
      * Method: pinchStart
      *
      * Parameters:
@@ -124,8 +83,10 @@ OpenLayers.Control.PinchZoom = OpenLayers.Class(OpenLayers.Control, {
      *     of the pinch gesture. This give us the current scale of the pinch.
      */
     pinchStart: function(evt, pinchData) {
-        this.pinchOrigin = evt.xy;
-        this.currentCenter = evt.xy;
+        var xy = (this.preserveCenter) ?
+            this.map.getPixelFromLonLat(this.map.getCenter()) : evt.xy;
+        this.pinchOrigin = xy;
+        this.currentCenter = xy;
     },
     
     /**
@@ -138,29 +99,18 @@ OpenLayers.Control.PinchZoom = OpenLayers.Class(OpenLayers.Control, {
      */
     pinchMove: function(evt, pinchData) {
         var scale = pinchData.scale;
-        var containerCenter = this.containerCenter;
+        var containerOrigin = this.map.layerContainerOriginPx;
         var pinchOrigin = this.pinchOrigin;
-        var current = evt.xy;
+        var current = (this.preserveCenter) ?
+            this.map.getPixelFromLonLat(this.map.getCenter()) : evt.xy;
 
-        var dx = Math.round((current.x - pinchOrigin.x) + (scale - 1) * (containerCenter.x - pinchOrigin.x));
-        var dy = Math.round((current.y - pinchOrigin.y) + (scale - 1) * (containerCenter.y - pinchOrigin.y));
+        var dx = Math.round((containerOrigin.x + current.x - pinchOrigin.x) + (scale - 1) * (containerOrigin.x - pinchOrigin.x));
+        var dy = Math.round((containerOrigin.y + current.y - pinchOrigin.y) + (scale - 1) * (containerOrigin.y - pinchOrigin.y));
 
-        this.applyTransform(
-            "translate(" + dx + "px, " + dy + "px) scale(" + scale + ")"
-        );
+        this.map.applyTransform(dx, dy, scale);
         this.currentCenter = current;
     },
-    
-    /**
-     * Method: applyTransform
-     * Applies the given transform to layers.
-     */
-    applyTransform: function(transform) {
-        var style = this.map.layerContainerDiv.style;
-        style['-webkit-transform'] = transform;
-        style['-moz-transform'] = transform;
-    },
-    
+
     /**
      * Method: pinchDone
      *
@@ -172,7 +122,7 @@ OpenLayers.Control.PinchZoom = OpenLayers.Class(OpenLayers.Control, {
      *     of the pinch gesture. This give us the final scale of the pinch.
      */
     pinchDone: function(evt, start, last) {
-        this.applyTransform("");
+        this.map.applyTransform();
         var zoom = this.map.getZoomForResolution(this.map.getResolution() / last.scale, true);
         if (zoom !== this.map.getZoom() || !this.currentCenter.equals(this.pinchOrigin)) {
             var resolution = this.map.getResolutionForZoom(zoom);
diff --git a/lib/OpenLayers/Control/SLDSelect.js b/lib/OpenLayers/Control/SLDSelect.js
index fcafdfe..cd348a7 100644
--- a/lib/OpenLayers/Control/SLDSelect.js
+++ b/lib/OpenLayers/Control/SLDSelect.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -82,7 +82,6 @@ OpenLayers.Control.SLDSelect = OpenLayers.Class(OpenLayers.Control, {
      * APIProperty: handlerOptions
      * {Object} Used to set non-default properties on the control's handler
      */
-    handlerOptions: null,
 
     /**
      * APIProperty: sketchStyle
@@ -97,7 +96,7 @@ OpenLayers.Control.SLDSelect = OpenLayers.Class(OpenLayers.Control, {
      *         layerOptions: {
      *             styleMap: new OpenLayers.StyleMap({
      *                 "default": {strokeColor: "yellow"}
-     *             });
+     *             })
      *         }
      *     }
      * });
@@ -534,12 +533,13 @@ OpenLayers.Control.SLDSelect = OpenLayers.Class(OpenLayers.Control, {
                 }
     
                 var selectionLayer = this.createSelectionLayer(layer);
-                var sld = this.createSLD(layer, filters, geometryAttributes);
     
                 this.events.triggerEvent("selected", {
                     layer: layer,
                     filters: filters
                 });
+
+                var sld = this.createSLD(layer, filters, geometryAttributes);
     
                 selectionLayer.mergeNewParams({SLD_BODY: sld});
                 delete this._queue;
diff --git a/lib/OpenLayers/Control/Scale.js b/lib/OpenLayers/Control/Scale.js
index 3e36ad0..c9f2d2b 100644
--- a/lib/OpenLayers/Control/Scale.js
+++ b/lib/OpenLayers/Control/Scale.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/ScaleLine.js b/lib/OpenLayers/Control/ScaleLine.js
index 2a501c2..9262414 100644
--- a/lib/OpenLayers/Control/ScaleLine.js
+++ b/lib/OpenLayers/Control/ScaleLine.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/SelectFeature.js b/lib/OpenLayers/Control/SelectFeature.js
index e5129ce..5467267 100644
--- a/lib/OpenLayers/Control/SelectFeature.js
+++ b/lib/OpenLayers/Control/SelectFeature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -300,14 +300,22 @@ OpenLayers.Control.SelectFeature = OpenLayers.Class(OpenLayers.Control, {
      */
     unselectAll: function(options) {
         // we'll want an option to supress notification here
-        var layers = this.layers || [this.layer];
-        var layer, feature;
-        for(var l=0; l<layers.length; ++l) {
+        var layers = this.layers || [this.layer],
+            layer, feature, l, numExcept;
+        for(l=0; l<layers.length; ++l) {
             layer = layers[l];
-            for(var i=layer.selectedFeatures.length-1; i>=0; --i) {
-                feature = layer.selectedFeatures[i];
-                if(!options || options.except != feature) {
-                    this.unselect(feature);
+            numExcept = 0;
+            //layer.selectedFeatures is null when layer is destroyed and 
+            //one of it's preremovelayer listener calls setLayer 
+            //with another layer on this control
+            if(layer.selectedFeatures != null) {
+                while(layer.selectedFeatures.length > numExcept) {
+                    feature = layer.selectedFeatures[numExcept];
+                    if(!options || options.except != feature) {
+                        this.unselect(feature);
+                    } else {
+                        ++numExcept;
+                    }
                 }
             }
         }
diff --git a/lib/OpenLayers/Control/Snapping.js b/lib/OpenLayers/Control/Snapping.js
index ec75f6d..2173114 100644
--- a/lib/OpenLayers/Control/Snapping.js
+++ b/lib/OpenLayers/Control/Snapping.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -124,7 +124,7 @@ OpenLayers.Control.Snapping = OpenLayers.Class(OpenLayers.Control, {
      *     objects below.  If the items in the targets list are vector layers
      *     (instead of configuration objects), the defaults from the <defaults>
      *     property will apply.  The editable layer itself may be a target
-     *     layer - allowing newly created or edited features to be snapped to
+     *     layer, allowing newly created or edited features to be snapped to
      *     existing features from the same layer.  If no targets are provided
      *     the layer given in the constructor (as <layer>) will become the
      *     initial target.
diff --git a/lib/OpenLayers/Control/Split.js b/lib/OpenLayers/Control/Split.js
index c382eae..de19eb7 100644
--- a/lib/OpenLayers/Control/Split.js
+++ b/lib/OpenLayers/Control/Split.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -240,7 +240,7 @@ OpenLayers.Control.Split = OpenLayers.Class(OpenLayers.Control, {
         var deactivated = OpenLayers.Control.prototype.deactivate.call(this);
         if(deactivated) {
             if(this.source && this.source.events) {
-                this.layer.events.un({
+                this.source.events.un({
                     sketchcomplete: this.onSketchComplete,
                     afterfeaturemodified: this.afterFeatureModified,
                     scope: this
diff --git a/lib/OpenLayers/Control/TouchNavigation.js b/lib/OpenLayers/Control/TouchNavigation.js
index 7ff476e..cd5f926 100644
--- a/lib/OpenLayers/Control/TouchNavigation.js
+++ b/lib/OpenLayers/Control/TouchNavigation.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -175,8 +175,7 @@ OpenLayers.Control.TouchNavigation = OpenLayers.Class(OpenLayers.Control, {
      * evt - {Event}
      */
     defaultDblClick: function (evt) {
-        var newCenter = this.map.getLonLatFromViewPortPx(evt.xy);
-        this.map.setCenter(newCenter, this.map.zoom + 1);
+        this.map.zoomTo(this.map.zoom + 1, evt.xy);
     },
 
     CLASS_NAME: "OpenLayers.Control.TouchNavigation"
diff --git a/lib/OpenLayers/Control/TransformFeature.js b/lib/OpenLayers/Control/TransformFeature.js
index 85f593e..8c21456 100644
--- a/lib/OpenLayers/Control/TransformFeature.js
+++ b/lib/OpenLayers/Control/TransformFeature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/UTFGrid.js b/lib/OpenLayers/Control/UTFGrid.js
index 4b439ac..7993201 100644
--- a/lib/OpenLayers/Control/UTFGrid.js
+++ b/lib/OpenLayers/Control/UTFGrid.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/WMSGetFeatureInfo.js b/lib/OpenLayers/Control/WMSGetFeatureInfo.js
index 974e703..c9242f6 100644
--- a/lib/OpenLayers/Control/WMSGetFeatureInfo.js
+++ b/lib/OpenLayers/Control/WMSGetFeatureInfo.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -15,10 +15,10 @@
 /**
  * Class: OpenLayers.Control.WMSGetFeatureInfo
  * The WMSGetFeatureInfo control uses a WMS query to get information about a point on the map.  The
- * information may be in a display-friendly format such as HTML, or a machine-friendly format such 
- * as GML, depending on the server's capabilities and the client's configuration.  This control 
- * handles click or hover events, attempts to parse the results using an OpenLayers.Format, and 
- * fires a 'getfeatureinfo' event with the click position, the raw body of the response, and an 
+ * information may be in a display-friendly format such as HTML, or a machine-friendly format such
+ * as GML, depending on the server's capabilities and the client's configuration.  This control
+ * handles click or hover events, attempts to parse the results using an OpenLayers.Format, and
+ * fires a 'getfeatureinfo' event with the click position, the raw body of the response, and an
  * array of features if it successfully read the response.
  *
  * Inherits from:
@@ -49,23 +49,25 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      */
     maxFeatures: 10,
 
-    /** APIProperty: clickCallback
-     *  {String} The click callback to register in the
-     *      {<OpenLayers.Handler.Click>} object created when the hover
-     *      option is set to false. Default is "click".
+    /**
+     * APIProperty: clickCallback
+     * {String} The click callback to register in the
+     *     {<OpenLayers.Handler.Click>} object created when the hover
+     *     option is set to false. Default is "click".
      */
     clickCallback: "click",
-    
-    /** APIProperty: output
-     *  {String} Either "features" or "object". When triggering a 
-     *      getfeatureinfo request should we pass on an array of features
-     *      or an object with with a "features" property and other properties
-     *      (such as the url of the WMS). Default is "features".
+
+    /**
+     * APIProperty: output
+     * {String} Either "features" or "object". When triggering a getfeatureinfo
+     *     request should we pass on an array of features or an object with with
+     *     a "features" property and other properties (such as the url of the
+     *     WMS). Default is "features".
      */
     output: "features",
-    
+
     /**
-     * Property: layers
+     * APIProperty: layers
      * {Array(<OpenLayers.Layer.WMS>)} The layers to query for feature info.
      *     If omitted, all map WMS layers with a url that matches this <url> or
      *     <layerUrls> will be considered.
@@ -73,21 +75,21 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
     layers: null,
 
     /**
-     * Property: queryVisible
+     * APIProperty: queryVisible
      * {Boolean} If true, filter out hidden layers when searching the map for
      *     layers to query.  Default is false.
      */
     queryVisible: false,
 
     /**
-     * Property: url
+     * APIProperty: url
      * {String} The URL of the WMS service to use.  If not provided, the url
      *     of the first eligible layer will be used.
      */
     url: null,
-    
+
     /**
-     * Property: layerUrls
+     * APIProperty: layerUrls
      * {Array(String)} Optional list of urls for layers that should be queried.
      *     This can be used when the layer url differs from the url used for
      *     making GetFeatureInfo requests (in the case of a layer using cached
@@ -96,18 +98,18 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
     layerUrls: null,
 
     /**
-     * Property: infoFormat
-     * {String} The mimetype to request from the server. If you are using 
-     * drillDown mode and have multiple servers that do not share a common 
-     * infoFormat, you can override the control's infoFormat by providing an 
-     * INFO_FORMAT parameter in your <OpenLayers.Layer.WMS> instance(s).
+     * APIProperty: infoFormat
+     * {String} The mimetype to request from the server. If you are using
+     *     drillDown mode and have multiple servers that do not share a common
+     *     infoFormat, you can override the control's infoFormat by providing an
+     *     INFO_FORMAT parameter in your <OpenLayers.Layer.WMS> instance(s).
      */
     infoFormat: 'text/html',
-    
+
     /**
-     * Property: vendorParams
+     * APIProperty: vendorParams
      * {Object} Additional parameters that will be added to the request, for
-     * WMS implementations that support them. This could e.g. look like
+     *     WMS implementations that support them. This could e.g. look like
      * (start code)
      * {
      *     radius: 5
@@ -115,16 +117,16 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      * (end)
      */
     vendorParams: {},
-    
+
     /**
-     * Property: format
+     * APIProperty: format
      * {<OpenLayers.Format>} A format for parsing GetFeatureInfo responses.
      *     Default is <OpenLayers.Format.WMSGetFeatureInfo>.
      */
     format: null,
-    
+
     /**
-     * Property: formatOptions
+     * APIProperty: formatOptions
      * {Object} Optional properties to set on the format (if one is not provided
      *     in the <format> property.
      */
@@ -140,22 +142,21 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      * }
      * (end)
      */
-    handlerOptions: null,
-    
+
     /**
      * Property: handler
      * {Object} Reference to the <OpenLayers.Handler> for this control
      */
     handler: null,
-    
+
     /**
      * Property: hoverRequest
      * {<OpenLayers.Request>} contains the currently running hover request
      *     (if any).
      */
     hoverRequest: null,
-    
-    /** 
+
+    /**
      * APIProperty: events
      * {<OpenLayers.Events>} Events instance for listeners and triggering
      *     control specific events.
@@ -167,7 +168,7 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      *
      * Supported event types (in addition to those from <OpenLayers.Control.events>):
      * beforegetfeatureinfo - Triggered before the request is sent.
-     *      The event object has an *xy* property with the position of the 
+     *      The event object has an *xy* property with the position of the
      *      mouse click or hover event that triggers the request.
      * nogetfeatureinfo - no queryable layers were found.
      * getfeatureinfo - Triggered when a GetFeatureInfo response is received.
@@ -185,20 +186,20 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      * Constructor: <OpenLayers.Control.WMSGetFeatureInfo>
      *
      * Parameters:
-     * options - {Object} 
+     * options - {Object}
      */
     initialize: function(options) {
         options = options || {};
         options.handlerOptions = options.handlerOptions || {};
 
         OpenLayers.Control.prototype.initialize.apply(this, [options]);
-        
+
         if(!this.format) {
             this.format = new OpenLayers.Format.WMSGetFeatureInfo(
                 options.formatOptions
             );
         }
-        
+
         if(this.drillDown === true) {
             this.hover = false;
         }
@@ -221,11 +222,11 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
     },
 
     /**
-     * Method: getInfoForClick 
+     * Method: getInfoForClick
      * Called on click
      *
      * Parameters:
-     * evt - {<OpenLayers.Event>} 
+     * evt - {<OpenLayers.Event>}
      */
     getInfoForClick: function(evt) {
         this.events.triggerEvent("beforegetfeatureinfo", {xy: evt.xy});
@@ -234,7 +235,7 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
         OpenLayers.Element.addClass(this.map.viewPortDiv, "olCursorWait");
         this.request(evt.xy, {});
     },
-   
+
     /**
      * Method: getInfoForHover
      * Pause callback for the hover handler
@@ -285,7 +286,7 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
         }
         return layers;
     },
-    
+
     /**
      * Method: urlMatches
      * Test to see if the provided url matches either the control <url> or one
@@ -384,7 +385,7 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      * Method: getStyleNames
      * Gets the STYLES parameter for the layer. Make sure the STYLES parameter
      * matches the LAYERS parameter
-     * 
+     *
      * Parameters:
      * layer - {<OpenLayers.Layer.WMS>}
      *
@@ -412,12 +413,12 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
     /**
      * Method: request
      * Sends a GetFeatureInfo request to the WMS
-     * 
+     *
      * Parameters:
      * clickPosition - {<OpenLayers.Pixel>} The position on the map where the
      *     mouse event occurred.
      * options - {Object} additional options for this method.
-     * 
+     *
      * Valid options:
      * - *hover* {Boolean} true if we do the request for the hover handler
      */
@@ -429,13 +430,13 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
             OpenLayers.Element.removeClass(this.map.viewPortDiv, "olCursorWait");
             return;
         }
-        
+
         options = options || {};
         if(this.drillDown === false) {
             var wmsOptions = this.buildWMSOptions(this.url, layers,
-                clickPosition, layers[0].params.FORMAT); 
+                clickPosition, layers[0].params.FORMAT);
             var request = OpenLayers.Request.GET(wmsOptions);
-    
+
             if (options.hover === true) {
                 this.hoverRequest = request;
             }
@@ -459,9 +460,9 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
             var layers;
             for (var url in services) {
                 layers = services[url];
-                var wmsOptions = this.buildWMSOptions(url, layers, 
+                var wmsOptions = this.buildWMSOptions(url, layers,
                     clickPosition, layers[0].params.FORMAT);
-                OpenLayers.Request.GET(wmsOptions); 
+                OpenLayers.Request.GET(wmsOptions);
             }
         }
     },
@@ -489,11 +490,11 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
         // Reset the cursor.
         OpenLayers.Element.removeClass(this.map.viewPortDiv, "olCursorWait");
     },
-    
+
     /**
      * Method: handleResponse
      * Handler for the GetFeatureInfo response.
-     * 
+     *
      * Parameters:
      * xy - {<OpenLayers.Pixel>} The position on the map where the
      *     mouse event occurred.
@@ -501,7 +502,7 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      * url - {String} The url which was used for this request.
      */
     handleResponse: function(xy, request, url) {
-        
+
         var doc = request.responseXML;
         if(!doc || !doc.documentElement) {
             doc = request.responseText;
@@ -519,7 +520,7 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
             this._features = (this._features || []).concat(features);
             }
             if (this._requestCount === this._numRequests) {
-                this.triggerGetFeatureInfo(request, xy, this._features.concat()); 
+                this.triggerGetFeatureInfo(request, xy, this._features.concat());
                 delete this._features;
                 delete this._requestCount;
                 delete this._numRequests;
diff --git a/lib/OpenLayers/Control/WMTSGetFeatureInfo.js b/lib/OpenLayers/Control/WMTSGetFeatureInfo.js
index ac2788e..c26f8f3 100644
--- a/lib/OpenLayers/Control/WMTSGetFeatureInfo.js
+++ b/lib/OpenLayers/Control/WMTSGetFeatureInfo.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -120,7 +120,6 @@ OpenLayers.Control.WMTSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, {
      * }
      * (end)
      */
-    handlerOptions: null,
     
     /**
      * Property: handler
diff --git a/lib/OpenLayers/Control/Zoom.js b/lib/OpenLayers/Control/Zoom.js
index 37ac48c..70140f4 100644
--- a/lib/OpenLayers/Control/Zoom.js
+++ b/lib/OpenLayers/Control/Zoom.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -37,9 +37,9 @@ OpenLayers.Control.Zoom = OpenLayers.Class(OpenLayers.Control, {
     /**
      * APIProperty: zoomOutText
      * {String}
-     * Text for zoom-out link.  Default is "-".
+     * Text for zoom-out link.  Default is "\u2212".
      */
-    zoomOutText: "-",
+    zoomOutText: "\u2212",
 
     /**
      * APIProperty: zoomOutId
diff --git a/lib/OpenLayers/Control/ZoomBox.js b/lib/OpenLayers/Control/ZoomBox.js
index 8f407ad..9d4b2da 100644
--- a/lib/OpenLayers/Control/ZoomBox.js
+++ b/lib/OpenLayers/Control/ZoomBox.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -41,9 +41,17 @@ OpenLayers.Control.ZoomBox = OpenLayers.Class(OpenLayers.Control, {
 
     /**
      * APIProperty: alwaysZoom
-     * {Boolean} Always zoom in/out, when box drawed 
+     * {Boolean} Always zoom in/out when box drawn, even if the zoom level does
+     * not change.
      */
     alwaysZoom: false,
+    
+    /**
+     * APIProperty: zoomOnClick
+     * {Boolean} Should we zoom when no box was dragged, i.e. the user only
+     * clicked? Default is true.
+     */
+    zoomOnClick: true,
 
     /**
      * Method: draw
@@ -61,7 +69,8 @@ OpenLayers.Control.ZoomBox = OpenLayers.Class(OpenLayers.Control, {
      */
     zoomBox: function (position) {
         if (position instanceof OpenLayers.Bounds) {
-            var bounds;
+            var bounds,
+                targetCenterPx = position.getCenterPixel();
             if (!this.out) {
                 var minXY = this.map.getLonLatFromPixel({
                     x: position.left,
@@ -74,13 +83,12 @@ OpenLayers.Control.ZoomBox = OpenLayers.Class(OpenLayers.Control, {
                 bounds = new OpenLayers.Bounds(minXY.lon, minXY.lat,
                                                maxXY.lon, maxXY.lat);
             } else {
-                var pixWidth = Math.abs(position.right-position.left);
-                var pixHeight = Math.abs(position.top-position.bottom);
+                var pixWidth = position.right - position.left;
+                var pixHeight = position.bottom - position.top;
                 var zoomFactor = Math.min((this.map.size.h / pixHeight),
                     (this.map.size.w / pixWidth));
                 var extent = this.map.getExtent();
-                var center = this.map.getLonLatFromPixel(
-                    position.getCenterPixel());
+                var center = this.map.getLonLatFromPixel(targetCenterPx);
                 var xmin = center.lon - (extent.getWidth()/2)*zoomFactor;
                 var xmax = center.lon + (extent.getWidth()/2)*zoomFactor;
                 var ymin = center.lat - (extent.getHeight()/2)*zoomFactor;
@@ -88,18 +96,31 @@ OpenLayers.Control.ZoomBox = OpenLayers.Class(OpenLayers.Control, {
                 bounds = new OpenLayers.Bounds(xmin, ymin, xmax, ymax);
             }
             // always zoom in/out 
-            var lastZoom = this.map.getZoom(); 
-            this.map.zoomToExtent(bounds);
+            var lastZoom = this.map.getZoom(),
+                size = this.map.getSize(),
+                centerPx = {x: size.w / 2, y: size.h / 2},
+                zoom = this.map.getZoomForExtent(bounds),
+                oldRes = this.map.getResolution(),
+                newRes = this.map.getResolutionForZoom(zoom);
+            if (oldRes == newRes) {
+                this.map.setCenter(this.map.getLonLatFromPixel(targetCenterPx));
+            } else {
+              var zoomOriginPx = {
+                    x: (oldRes * targetCenterPx.x - newRes * centerPx.x) /
+                        (oldRes - newRes),
+                    y: (oldRes * targetCenterPx.y - newRes * centerPx.y) /
+                        (oldRes - newRes)
+                };
+                this.map.zoomTo(zoom, zoomOriginPx);
+            }
             if (lastZoom == this.map.getZoom() && this.alwaysZoom == true){ 
                 this.map.zoomTo(lastZoom + (this.out ? -1 : 1)); 
             }
-        } else { // it's a pixel
+        } else if (this.zoomOnClick) { // it's a pixel
             if (!this.out) {
-                this.map.setCenter(this.map.getLonLatFromPixel(position),
-                               this.map.getZoom() + 1);
+                this.map.zoomTo(this.map.getZoom() + 1, position);
             } else {
-                this.map.setCenter(this.map.getLonLatFromPixel(position),
-                               this.map.getZoom() - 1);
+                this.map.zoomTo(this.map.getZoom() - 1, position);
             }
         }
     },
diff --git a/lib/OpenLayers/Control/ZoomIn.js b/lib/OpenLayers/Control/ZoomIn.js
index 776172d..8da1e1c 100644
--- a/lib/OpenLayers/Control/ZoomIn.js
+++ b/lib/OpenLayers/Control/ZoomIn.js
@@ -1,10 +1,10 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
- * @requires OpenLayers/Control.js
+ * @requires OpenLayers/Control/Button.js
  */
 
 /**
@@ -14,21 +14,15 @@
  * Inherits from:
  *  - <OpenLayers.Control>
  */
-OpenLayers.Control.ZoomIn = OpenLayers.Class(OpenLayers.Control, {
+OpenLayers.Control.ZoomIn = OpenLayers.Class(OpenLayers.Control.Button, {
 
     /**
-     * Property: type
-     * {String} The type of <OpenLayers.Control> -- When added to a 
-     *     <Control.Panel>, 'type' is used by the panel to determine how to 
-     *     handle our events.
-     */
-    type: OpenLayers.Control.TYPE_BUTTON,
-    
-    /**
      * Method: trigger
      */
     trigger: function(){
-        this.map.zoomIn();
+        if (this.map) {
+            this.map.zoomIn();
+        }
     },
 
     CLASS_NAME: "OpenLayers.Control.ZoomIn"
diff --git a/lib/OpenLayers/Control/ZoomOut.js b/lib/OpenLayers/Control/ZoomOut.js
index 2a538af..72a657b 100644
--- a/lib/OpenLayers/Control/ZoomOut.js
+++ b/lib/OpenLayers/Control/ZoomOut.js
@@ -1,10 +1,10 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
- * @requires OpenLayers/Control.js
+ * @requires OpenLayers/Control/Button.js
  */
 
 /**
@@ -14,21 +14,15 @@
  * Inherits from:
  *  - <OpenLayers.Control>
  */
-OpenLayers.Control.ZoomOut = OpenLayers.Class(OpenLayers.Control, {
+OpenLayers.Control.ZoomOut = OpenLayers.Class(OpenLayers.Control.Button, {
 
     /**
-     * Property: type
-     * {String} The type of <OpenLayers.Control> -- When added to a 
-     *     <Control.Panel>, 'type' is used by the panel to determine how to 
-     *     handle our events.
-     */
-    type: OpenLayers.Control.TYPE_BUTTON,
-    
-    /**
      * Method: trigger
      */
     trigger: function(){
-        this.map.zoomOut();
+        if (this.map) {
+            this.map.zoomOut();
+        }
     },
 
     CLASS_NAME: "OpenLayers.Control.ZoomOut"
diff --git a/lib/OpenLayers/Control/ZoomPanel.js b/lib/OpenLayers/Control/ZoomPanel.js
index d08c27b..147f6cb 100644
--- a/lib/OpenLayers/Control/ZoomPanel.js
+++ b/lib/OpenLayers/Control/ZoomPanel.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Control/ZoomToMaxExtent.js b/lib/OpenLayers/Control/ZoomToMaxExtent.js
index b172c28..bc2e754 100644
--- a/lib/OpenLayers/Control/ZoomToMaxExtent.js
+++ b/lib/OpenLayers/Control/ZoomToMaxExtent.js
@@ -1,10 +1,10 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
- * @requires OpenLayers/Control.js
+ * @requires OpenLayers/Control/Button.js
  */
 
 /**
@@ -16,19 +16,14 @@
  * Inherits from:
  *  - <OpenLayers.Control>
  */
-OpenLayers.Control.ZoomToMaxExtent = OpenLayers.Class(OpenLayers.Control, {
+OpenLayers.Control.ZoomToMaxExtent = OpenLayers.Class(OpenLayers.Control.Button, {
 
     /**
-     * Property: type
-     * {String} The type of <OpenLayers.Control> -- When added to a 
-     *     <Control.Panel>, 'type' is used by the panel to determine how to 
-     *     handle our events.
-     */
-    type: OpenLayers.Control.TYPE_BUTTON,
-    
-    /*
      * Method: trigger
-     * Do the zoom.
+     * 
+     * Called whenever this control is being rendered inside of a panel and a 
+     *     click occurs on this controls element. Actually zooms to the maximum
+     *     extent of this controls map.
      */
     trigger: function() {
         if (this.map) {
diff --git a/lib/OpenLayers/Events.js b/lib/OpenLayers/Events.js
index c2b5b99..6a4a129 100644
--- a/lib/OpenLayers/Events.js
+++ b/lib/OpenLayers/Events.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -167,11 +167,7 @@ OpenLayers.Event = {
     stop: function(event, allowDefault) {
         
         if (!allowDefault) { 
-            if (event.preventDefault) {
-                event.preventDefault();
-            } else {
-                event.returnValue = false;
-            }
+            OpenLayers.Event.preventDefault(event);
         }
                 
         if (event.stopPropagation) {
@@ -181,6 +177,22 @@ OpenLayers.Event = {
         }
     },
 
+    /**
+     * Method: preventDefault
+     * Cancels the event if it is cancelable, without stopping further
+     * propagation of the event.
+     *
+     * Parameters:
+     * event - {Event}
+     */
+    preventDefault: function(event) {
+        if (event.preventDefault) {
+            event.preventDefault();
+        } else {
+            event.returnValue = false;
+        }
+    },
+
     /** 
      * Method: findElement
      * 
@@ -285,11 +297,9 @@ OpenLayers.Event = {
         if (elementObservers) {
             for(var i = elementObservers.length-1; i >= 0; i--) {
                 var entry = elementObservers[i];
-                var args = new Array(entry.element,
-                                     entry.name,
-                                     entry.observer,
-                                     entry.useCapture);
-                var removed = OpenLayers.Event.stopObserving.apply(this, args);
+                OpenLayers.Event.stopObserving.apply(this, [
+                    entry.element, entry.name, entry.observer, entry.useCapture
+                ]);
             }
         }
     },
@@ -556,6 +566,7 @@ OpenLayers.Events = OpenLayers.Class({
         this.listeners  = {};
         this.extensions = {};
         this.extensionCount = {};
+        this._msTouches = [];
         
         // if a dom element is specified, add a listeners list 
         // for browser events on the element and register them
@@ -622,11 +633,16 @@ OpenLayers.Events = OpenLayers.Class({
             );
         }
         this.element = element;
+        var msTouch = !!window.navigator.msMaxTouchPoints;
+        var type;
         for (var i = 0, len = this.BROWSER_EVENTS.length; i < len; i++) {
+            type = this.BROWSER_EVENTS[i];
             // register the event cross-browser
-            OpenLayers.Event.observe(
-                element, this.BROWSER_EVENTS[i], this.eventHandler
+            OpenLayers.Event.observe(element, type, this.eventHandler
             );
+            if (msTouch && type.indexOf('touch') === 0) {
+                this.addMsTouchListener(element, type, this.eventHandler);
+            }
         }
         // disable dragstart in IE so that mousedown/move/up works normally
         OpenLayers.Event.observe(element, "dragstart", OpenLayers.Event.stop);
@@ -824,7 +840,7 @@ OpenLayers.Events = OpenLayers.Class({
      * 
      * Parameters:
      * type - {String} 
-     * evt - {Event}
+     * evt - {Event || Object} will be passed to the listeners.
      *
      * Returns:
      * {Boolean} The last listener return.  If a listener returns false, the
@@ -893,7 +909,7 @@ OpenLayers.Events = OpenLayers.Class({
             var num = touches.length;
             var touch;
             for (var i=0; i<num; ++i) {
-                touch = touches[i];
+                touch = this.getTouchClientXY(touches[i]);
                 x += touch.clientX;
                 y += touch.clientY;
             }
@@ -905,7 +921,48 @@ OpenLayers.Events = OpenLayers.Class({
         } 
         this.triggerEvent(type, evt);
     },
-
+    
+    /**
+     * Method: getTouchClientXY
+     * WebKit has a few bugs for clientX/clientY. This method detects them
+     * and calculate the correct values.
+     *
+     * Parameters:
+     * evt - {Touch} a Touch object from a TouchEvent
+     * 
+     * Returns:
+     * {Object} An object with only clientX and clientY properties with the
+     * calculated values.
+     */
+    getTouchClientXY: function (evt) {
+        // olMochWin is to override window, used for testing
+        var win = window.olMockWin || window,
+            winPageX = win.pageXOffset,
+            winPageY = win.pageYOffset,
+            x = evt.clientX,
+            y = evt.clientY;
+        
+        if (evt.pageY === 0 && Math.floor(y) > Math.floor(evt.pageY) ||
+            evt.pageX === 0 && Math.floor(x) > Math.floor(evt.pageX)) {
+            // iOS4 include scroll offset in clientX/Y
+            x = x - winPageX;
+            y = y - winPageY;
+        } else if (y < (evt.pageY - winPageY) || x < (evt.pageX - winPageX) ) {
+            // Some Android browsers have totally bogus values for clientX/Y
+            // when scrolling/zooming a page
+            x = evt.pageX - winPageX;
+            y = evt.pageY - winPageY;
+        }
+        
+        evt.olClientX = x;
+        evt.olClientY = y;
+        
+        return {
+            clientX: x,
+            clientY: y
+        };
+    },
+    
     /**
      * APIMethod: clearMouseCache
      * Clear cached data about the mouse position. This should be called any 
@@ -915,17 +972,7 @@ OpenLayers.Events = OpenLayers.Class({
     clearMouseCache: function() { 
         this.element.scrolls = null;
         this.element.lefttop = null;
-        // OpenLayers.Util.pagePosition needs to use
-        // element.getBoundingClientRect to correctly calculate the offsets
-        // for the iPhone, but once the page is scrolled, getBoundingClientRect
-        // returns incorrect offsets. So our best bet is to not invalidate the
-        // offsets once we have them, and hope that the page was not scrolled
-        // when we did the initial calculation.
-        var body = document.body;
-        if (body && !((body.scrollTop != 0 || body.scrollLeft != 0) &&
-                                    navigator.userAgent.match(/iPhone/i))) {
-            this.element.offsets = null;
-        }
+        this.element.offsets = null;
     },      
 
     /**
@@ -949,8 +996,8 @@ OpenLayers.Events = OpenLayers.Class({
         if (!this.element.scrolls) {
             var viewportElement = OpenLayers.Util.getViewportElement();
             this.element.scrolls = [
-                viewportElement.scrollLeft,
-                viewportElement.scrollTop
+                window.pageXOffset || viewportElement.scrollLeft,
+                window.pageYOffset || viewportElement.scrollTop
             ];
         }
 
@@ -973,5 +1020,151 @@ OpenLayers.Events = OpenLayers.Class({
         ); 
     },
 
+    /**
+     * Method: addMsTouchListener
+     *
+     * Parameters:
+     * element - {DOMElement} The DOM element to register the listener on
+     * type - {String} The event type
+     * handler - {Function} the handler
+     */
+    addMsTouchListener: function (element, type, handler) {
+        var eventHandler = this.eventHandler;
+        var touches = this._msTouches;
+
+        function msHandler(evt) {
+            handler(OpenLayers.Util.applyDefaults({
+                stopPropagation: function() {
+                    for (var i=touches.length-1; i>=0; --i) {
+                        touches[i].stopPropagation();
+                    }
+                },
+                preventDefault: function() {
+                    for (var i=touches.length-1; i>=0; --i) {
+                        touches[i].preventDefault();
+                    }
+                },
+                type: type
+            }, evt));
+        }
+
+        switch (type) {
+            case 'touchstart':
+                return this.addMsTouchListenerStart(element, type, msHandler);
+            case 'touchend':
+                return this.addMsTouchListenerEnd(element, type, msHandler);
+            case 'touchmove':
+                return this.addMsTouchListenerMove(element, type, msHandler);
+            default:
+                throw 'Unknown touch event type';
+        }
+    },
+
+    /**
+     * Method: addMsTouchListenerStart
+     *
+     * Parameters:
+     * element - {DOMElement} The DOM element to register the listener on
+     * type - {String} The event type
+     * handler - {Function} the handler
+     */
+    addMsTouchListenerStart: function(element, type, handler) {
+        var touches = this._msTouches;
+
+        var cb = function(e) {
+
+            var alreadyInArray = false;
+            for (var i=0, ii=touches.length; i<ii; ++i) {
+                if (touches[i].pointerId == e.pointerId) {
+                    alreadyInArray = true;
+                    break;
+                }
+            }
+            if (!alreadyInArray) {
+                touches.push(e);
+            }
+
+            e.touches = touches.slice();
+            handler(e);
+        };
+
+        OpenLayers.Event.observe(element, 'MSPointerDown', cb);
+
+        // Need to also listen for end events to keep the _msTouches list
+        // accurate
+        var internalCb = function(e) {
+            for (var i=0, ii=touches.length; i<ii; ++i) {
+                if (touches[i].pointerId == e.pointerId) {
+                    touches.splice(i, 1);
+                    break;
+                }
+            }
+        };
+        OpenLayers.Event.observe(element, 'MSPointerUp', internalCb);
+    },
+
+    /**
+     * Method: addMsTouchListenerMove
+     *
+     * Parameters:
+     * element - {DOMElement} The DOM element to register the listener on
+     * type - {String} The event type
+     * handler - {Function} the handler
+     */
+    addMsTouchListenerMove: function (element, type, handler) {
+        var touches = this._msTouches;
+        var cb = function(e) {
+
+            //Don't fire touch moves when mouse isn't down
+            if (e.pointerType == e.MSPOINTER_TYPE_MOUSE && e.buttons == 0) {
+                return;
+            }
+
+            if (touches.length == 1 && touches[0].pageX == e.pageX &&
+                    touches[0].pageY == e.pageY) {
+                // don't trigger event when pointer has not moved
+                return;
+            }
+            for (var i=0, ii=touches.length; i<ii; ++i) {
+                if (touches[i].pointerId == e.pointerId) {
+                    touches[i] = e;
+                    break;
+                }
+            }
+
+            e.touches = touches.slice();
+            handler(e);
+        };
+
+        OpenLayers.Event.observe(element, 'MSPointerMove', cb);
+    },
+
+    /**
+     * Method: addMsTouchListenerEnd
+     *
+     * Parameters:
+     * element - {DOMElement} The DOM element to register the listener on
+     * type - {String} The event type
+     * handler - {Function} the handler
+     */
+    addMsTouchListenerEnd: function (element, type, handler) {
+        var touches = this._msTouches;
+
+        var cb = function(e) {
+
+            for (var i=0, ii=touches.length; i<ii; ++i) {
+                if (touches[i].pointerId == e.pointerId) {
+                    touches.splice(i, 1);
+                    break;
+                }
+            }
+            
+            e.touches = touches.slice();
+            handler(e);
+        };
+
+        OpenLayers.Event.observe(element, 'MSPointerUp', cb);
+    },
+
     CLASS_NAME: "OpenLayers.Events"
 });
diff --git a/lib/OpenLayers/Events/buttonclick.js b/lib/OpenLayers/Events/buttonclick.js
index e2a3eda..ae9094d 100644
--- a/lib/OpenLayers/Events/buttonclick.js
+++ b/lib/OpenLayers/Events/buttonclick.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -121,6 +121,26 @@ OpenLayers.Events.buttonclick = OpenLayers.Class({
         } while(--depth > 0 && element);
         return button;
     },
+    
+    /**
+     * Method: ignore
+     * Check for event target elements that should be ignored by OpenLayers.
+     *
+     * Parameters:
+     * element - {DOMElement} The event target.
+     */
+    ignore: function(element) {
+        var depth = 3,
+            ignore = false;
+        do {
+            if (element.nodeName.toLowerCase() === 'a') {
+                ignore = true;
+                break;
+            }
+            element = element.parentNode;
+        } while (--depth > 0 && element);
+        return ignore;
+    },
 
     /**
      * Method: buttonClick
@@ -150,6 +170,12 @@ OpenLayers.Events.buttonclick = OpenLayers.Class({
                 } else if (this.startEvt) {
                     if (this.completeRegEx.test(evt.type)) {
                         var pos = OpenLayers.Util.pagePosition(button);
+                        var viewportElement = OpenLayers.Util.getViewportElement();
+                        var scrollTop = window.pageYOffset || viewportElement.scrollTop;
+                        var scrollLeft = window.pageXOffset || viewportElement.scrollLeft;
+                        pos[0] = pos[0] - scrollLeft;
+                        pos[1] = pos[1] - scrollTop;
+                        
                         this.target.triggerEvent("buttonclick", {
                             buttonElement: button,
                             buttonXY: {
@@ -170,6 +196,7 @@ OpenLayers.Events.buttonclick = OpenLayers.Class({
                     propagate = false;
                 }
             } else {
+                propagate = !this.ignore(OpenLayers.Event.element(evt));
                 delete this.startEvt;
             }
         }
diff --git a/lib/OpenLayers/Events/featureclick.js b/lib/OpenLayers/Events/featureclick.js
new file mode 100644
index 0000000..9ae6ec5
--- /dev/null
+++ b/lib/OpenLayers/Events/featureclick.js
@@ -0,0 +1,321 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/Events.js
+ */
+
+/**
+ * Class: OpenLayers.Events.featureclick
+ *
+ * Extension event type for handling feature click events, including overlapping
+ * features. 
+ * 
+ * Event types provided by this extension:
+ * - featureclick 
+ */
+OpenLayers.Events.featureclick = OpenLayers.Class({
+    
+    /**
+     * Property: cache
+     * {Object} A cache of features under the mouse.
+     */
+    cache: null,
+    
+    /**
+     * Property: map
+     * {<OpenLayers.Map>} The map to register browser events on.
+     */
+    map: null,
+    
+    /**
+     * Property: provides
+     * {Array(String)} The event types provided by this extension.
+     */
+    provides: ["featureclick", "nofeatureclick", "featureover", "featureout"],
+    
+    /**
+     * Constructor: OpenLayers.Events.featureclick
+     * Create a new featureclick event type.
+     *
+     * Parameters:
+     * target - {<OpenLayers.Events>} The events instance to create the events
+     *     for.
+     */
+    initialize: function(target) {
+        this.target = target;
+        if (target.object instanceof OpenLayers.Map) {
+            this.setMap(target.object);
+        } else if (target.object instanceof OpenLayers.Layer.Vector) {
+            if (target.object.map) {
+                this.setMap(target.object.map);
+            } else {
+                target.object.events.register("added", this, function(evt) {
+                    this.setMap(target.object.map);
+                });
+            }
+        } else {
+            throw("Listeners for '" + this.provides.join("', '") +
+                "' events can only be registered for OpenLayers.Layer.Vector " + 
+                "or OpenLayers.Map instances");
+        }
+        for (var i=this.provides.length-1; i>=0; --i) {
+            target.extensions[this.provides[i]] = true;
+        }
+    },
+    
+    /**
+     * Method: setMap
+     *
+     * Parameters:
+     * map - {<OpenLayers.Map>} The map to register browser events on.
+     */
+    setMap: function(map) {
+        this.map = map;
+        this.cache = {};
+        map.events.register("mousedown", this, this.start, {extension: true});
+        map.events.register("mouseup", this, this.onClick, {extension: true});
+        map.events.register("touchstart", this, this.start, {extension: true});
+        map.events.register("touchmove", this, this.cancel, {extension: true});
+        map.events.register("touchend", this, this.onClick, {extension: true});
+        map.events.register("mousemove", this, this.onMousemove, {extension: true});
+    },
+    
+    /**
+     * Method: start
+     * Sets startEvt = evt.
+     *
+     * Parameters:
+     * evt - {<OpenLayers.Event>}
+     */
+    start: function(evt) {
+        this.startEvt = evt;
+    },
+    
+    /**
+     * Method: cancel
+     * Deletes the start event.
+     *
+     * Parameters:
+     * evt - {<OpenLayers.Event>}
+     */    
+    cancel: function(evt) {
+        delete this.startEvt;
+    },
+    
+    /**
+     * Method: onClick
+     * Listener for the click event.
+     *
+     * Parameters:
+     * evt - {<OpenLayers.Event>}
+     */
+    onClick: function(evt) {
+        if (!this.startEvt || evt.type !== "touchend" &&
+                !OpenLayers.Event.isLeftClick(evt)) {
+            return;
+        }
+        var features = this.getFeatures(this.startEvt);
+        delete this.startEvt;
+        // fire featureclick events
+        var feature, layer, more, clicked = {};
+        for (var i=0, len=features.length; i<len; ++i) {
+            feature = features[i];
+            layer = feature.layer;
+            clicked[layer.id] = true;
+            more = this.triggerEvent("featureclick", {feature: feature});
+            if (more === false) {
+                break;
+            }
+        }
+        // fire nofeatureclick events on all vector layers with no targets
+        for (i=0, len=this.map.layers.length; i<len; ++i) {
+            layer = this.map.layers[i];
+            if (layer instanceof OpenLayers.Layer.Vector && !clicked[layer.id]) {
+                this.triggerEvent("nofeatureclick", {layer: layer});
+            }
+        }
+    },
+    
+    /**
+     * Method: onMousemove
+     * Listener for the mousemove event.
+     *
+     * Parameters:
+     * evt - {<OpenLayers.Event>}
+     */
+    onMousemove: function(evt) {
+        delete this.startEvt;
+        var features = this.getFeatures(evt);
+        var over = {}, newly = [], feature;
+        for (var i=0, len=features.length; i<len; ++i) {
+            feature = features[i];
+            over[feature.id] = feature;
+            if (!this.cache[feature.id]) {
+                newly.push(feature);
+            }
+        }
+        // check if already over features
+        var out = [];
+        for (var id in this.cache) {
+            feature = this.cache[id];
+            if (feature.layer && feature.layer.map) {
+                if (!over[feature.id]) {
+                    out.push(feature);
+                }
+            } else {
+                // removed
+                delete this.cache[id];
+            }
+        }
+        // fire featureover events
+        var more;
+        for (i=0, len=newly.length; i<len; ++i) {
+            feature = newly[i];
+            this.cache[feature.id] = feature;
+            more = this.triggerEvent("featureover", {feature: feature});
+            if (more === false) {
+                break;
+            }
+        }
+        // fire featureout events
+        for (i=0, len=out.length; i<len; ++i) {
+            feature = out[i];
+            delete this.cache[feature.id];
+            more = this.triggerEvent("featureout", {feature: feature});
+            if (more === false) {
+                break;
+            }
+        }
+    },
+    
+    /**
+     * Method: triggerEvent
+     * Determines where to trigger the event and triggers it.
+     *
+     * Parameters:
+     * type - {String} The event type to trigger
+     * evt - {Object} The listener argument
+     *
+     * Returns:
+     * {Boolean} The last listener return.
+     */
+    triggerEvent: function(type, evt) {
+        var layer = evt.feature ? evt.feature.layer : evt.layer,
+            object = this.target.object;
+        if (object instanceof OpenLayers.Map || object === layer) {
+            return this.target.triggerEvent(type, evt);
+        }
+    },
+
+    /**
+     * Method: getFeatures
+     * Get all features at the given screen location.
+     *
+     * Parameters:
+     * evt - {Object} Event object.
+     *
+     * Returns:
+     * {Array(<OpenLayers.Feature.Vector>)} List of features at the given point.
+     */
+    getFeatures: function(evt) {
+        var x = evt.clientX, y = evt.clientY,
+            features = [], targets = [], layers = [],
+            layer, target, feature, i, len;
+        // go through all layers looking for targets
+        for (i=this.map.layers.length-1; i>=0; --i) {
+            layer = this.map.layers[i];
+            if (layer.div.style.display !== "none") {
+                if (layer.renderer instanceof OpenLayers.Renderer.Elements) {
+                    if (layer instanceof OpenLayers.Layer.Vector) {
+                        target = document.elementFromPoint(x, y);
+                        while (target && target._featureId) {
+                            feature = layer.getFeatureById(target._featureId);
+                            if (feature) {
+                                features.push(feature);
+                                target.style.display = "none";
+                                targets.push(target);
+                                target = document.elementFromPoint(x, y);
+                            } else {
+                                // sketch, all bets off
+                                target = false;
+                            }
+                        }
+                    }
+                    layers.push(layer);
+                    layer.div.style.display = "none";
+                } else if (layer.renderer instanceof OpenLayers.Renderer.Canvas) {
+                    feature = layer.renderer.getFeatureIdFromEvent(evt);
+                    if (feature) {
+                        features.push(feature);
+                        layers.push(layer);
+                    }
+                }
+            }
+        }
+        // restore feature visibility
+        for (i=0, len=targets.length; i<len; ++i) {
+            targets[i].style.display = "";
+        }
+        // restore layer visibility
+        for (i=layers.length-1; i>=0; --i) {
+            layers[i].div.style.display = "block";
+        }
+        return features;
+    },
+    
+    /**
+     * APIMethod: destroy
+     * Clean up.
+     */
+    destroy: function() {
+        for (var i=this.provides.length-1; i>=0; --i) {
+            delete this.target.extensions[this.provides[i]];
+        }        
+        this.map.events.un({
+            mousemove: this.onMousemove,
+            mousedown: this.start,
+            mouseup: this.onClick,
+            touchstart: this.start,
+            touchmove: this.cancel,
+            touchend: this.onClick,
+            scope: this
+        });
+        delete this.cache;
+        delete this.map;
+        delete this.target;
+    }
+    
+});
+ 
+/**
+ * Class: OpenLayers.Events.nofeatureclick
+ *
+ * Extension event type for handling click events that do not hit a feature. 
+ * 
+ * Event types provided by this extension:
+ * - nofeatureclick 
+ */
+OpenLayers.Events.nofeatureclick = OpenLayers.Events.featureclick;
+
+/**
+ * Class: OpenLayers.Events.featureover
+ *
+ * Extension event type for handling hovering over a feature. 
+ * 
+ * Event types provided by this extension:
+ * - featureover 
+ */
+OpenLayers.Events.featureover = OpenLayers.Events.featureclick;
+
+/**
+ * Class: OpenLayers.Events.featureout
+ *
+ * Extension event type for handling leaving a feature. 
+ * 
+ * Event types provided by this extension:
+ * - featureout 
+ */
+OpenLayers.Events.featureout = OpenLayers.Events.featureclick;
diff --git a/lib/OpenLayers/Feature.js b/lib/OpenLayers/Feature.js
index 7e391d3..ed7fd16 100644
--- a/lib/OpenLayers/Feature.js
+++ b/lib/OpenLayers/Feature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Feature/Vector.js b/lib/OpenLayers/Feature/Vector.js
index 6f36fec..a6c8c70 100644
--- a/lib/OpenLayers/Feature/Vector.js
+++ b/lib/OpenLayers/Feature/Vector.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -403,7 +403,8 @@ OpenLayers.Feature.Vector = OpenLayers.Class(OpenLayers.Feature, {
  * graphicZIndex - {Number} The integer z-index value to use in rendering.
  * graphicName - {String} Named graphic to use when rendering points.  Supported values include "circle" (default),
  *     "square", "star", "x", "cross", "triangle".
- * graphicTitle - {String} Tooltip for an external graphic.
+ * graphicTitle - {String} Tooltip when hovering over a feature. *deprecated*, use title instead
+ * title - {String} Tooltip when hovering over a feature. Not supported by the canvas renderer.
  * backgroundGraphic - {String} Url to a graphic to be used as the background under an externalGraphic.
  * backgroundGraphicZIndex - {Number} The integer z-index value to use in rendering the background graphic.
  * backgroundXOffset - {Number} The x offset (in pixels) for the background graphic.
@@ -421,7 +422,8 @@ OpenLayers.Feature.Vector = OpenLayers.Class(OpenLayers.Feature, {
  * labelSelect - {Boolean} If set to true, labels will be selectable using SelectFeature or similar controls.
  *     Default is false.
  * labelOutlineColor - {String} The color of the label outline. Default is 'white'. Only supported by the canvas & SVG renderers.
- * labelOutlineWidth - {Number} The width of the label outline. Default is 3, set to 0 or null to disable. Only supported by the canvas & SVG renderers.
+ * labelOutlineWidth - {Number} The width of the label outline. Default is 3, set to 0 or null to disable. Only supported by the  SVG renderers.
+ * labelOutlineOpacity - {Number} The opacity (0-1) of the label outline. Default is fontOpacity. Only supported by the canvas & SVG renderers.
  * fontColor - {String} The font color for the label, to be provided like CSS.
  * fontOpacity - {Number} Opacity (0-1) for the label
  * fontFamily - {String} The font family for the label, to be provided like in CSS.
diff --git a/lib/OpenLayers/Filter.js b/lib/OpenLayers/Filter.js
index b9d8c9e..99c0448 100644
--- a/lib/OpenLayers/Filter.js
+++ b/lib/OpenLayers/Filter.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Filter/Comparison.js b/lib/OpenLayers/Filter/Comparison.js
index c57c868..6863ea8 100644
--- a/lib/OpenLayers/Filter/Comparison.js
+++ b/lib/OpenLayers/Filter/Comparison.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -26,7 +26,8 @@ OpenLayers.Filter.Comparison = OpenLayers.Class(OpenLayers.Filter, {
      * - OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO    = "<=";
      * - OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO = ">=";
      * - OpenLayers.Filter.Comparison.BETWEEN                  = "..";
-     * - OpenLayers.Filter.Comparison.LIKE                     = "~"; 
+     * - OpenLayers.Filter.Comparison.LIKE                     = "~";
+     * - OpenLayers.Filter.Comparison.IS_NULL                  = "NULL";
      */
     type: null,
     
@@ -154,6 +155,9 @@ OpenLayers.Filter.Comparison = OpenLayers.Class(OpenLayers.Filter, {
                 var regexp = new RegExp(this.value, "gi");
                 result = regexp.test(got);
                 break;
+            case OpenLayers.Filter.Comparison.IS_NULL:
+                result = (got === null);
+                break;
         }
         return result;
     },
@@ -260,3 +264,4 @@ OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO    = "<=";
 OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO = ">=";
 OpenLayers.Filter.Comparison.BETWEEN                  = "..";
 OpenLayers.Filter.Comparison.LIKE                     = "~";
+OpenLayers.Filter.Comparison.IS_NULL                  = "NULL";
diff --git a/lib/OpenLayers/Filter/FeatureId.js b/lib/OpenLayers/Filter/FeatureId.js
index c9b14ab..2927651 100644
--- a/lib/OpenLayers/Filter/FeatureId.js
+++ b/lib/OpenLayers/Filter/FeatureId.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Filter/Function.js b/lib/OpenLayers/Filter/Function.js
index c7d6047..0d5a7a9 100644
--- a/lib/OpenLayers/Filter/Function.js
+++ b/lib/OpenLayers/Filter/Function.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Filter/Logical.js b/lib/OpenLayers/Filter/Logical.js
index b8e5c4d..4eac579 100644
--- a/lib/OpenLayers/Filter/Logical.js
+++ b/lib/OpenLayers/Filter/Logical.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Filter/Spatial.js b/lib/OpenLayers/Filter/Spatial.js
index 0aba0cf..dd9e2a7 100644
--- a/lib/OpenLayers/Filter/Spatial.js
+++ b/lib/OpenLayers/Filter/Spatial.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format.js b/lib/OpenLayers/Format.js
index 16c5d5b..620ecc7 100644
--- a/lib/OpenLayers/Format.js
+++ b/lib/OpenLayers/Format.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/ArcXML.js b/lib/OpenLayers/Format/ArcXML.js
index e0affce..9d523d1 100644
--- a/lib/OpenLayers/Format/ArcXML.js
+++ b/lib/OpenLayers/Format/ArcXML.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -13,7 +13,7 @@
 
 /**
  * Class: OpenLayers.Format.ArcXML
- * Read/Wite ArcXML. Create a new instance with the <OpenLayers.Format.ArcXML>
+ * Read/Write ArcXML. Create a new instance with the <OpenLayers.Format.ArcXML>
  *     constructor.
  * 
  * Inherits from:
diff --git a/lib/OpenLayers/Format/ArcXML/Features.js b/lib/OpenLayers/Format/ArcXML/Features.js
index dc01a4a..5b8730d 100644
--- a/lib/OpenLayers/Format/ArcXML/Features.js
+++ b/lib/OpenLayers/Format/ArcXML/Features.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -9,7 +9,7 @@
 
 /**
  * Class: OpenLayers.Format.ArcXML.Features
- * Read/Wite ArcXML features. Create a new instance with the 
+ * Read/Write ArcXML features. Create a new instance with the 
  *     <OpenLayers.Format.ArcXML.Features> constructor.
  * 
  * Inherits from:
diff --git a/lib/OpenLayers/Format/Atom.js b/lib/OpenLayers/Format/Atom.js
index 7f6aaa1..8eb5792 100644
--- a/lib/OpenLayers/Format/Atom.js
+++ b/lib/OpenLayers/Format/Atom.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -646,7 +646,7 @@ OpenLayers.Format.Atom = OpenLayers.Class(OpenLayers.Format.XML, {
                 }
                 components.push(
                     new OpenLayers.Geometry.Polygon(
-                        [new OpenLayers.Geometry.LinearRing(components)]
+                        [new OpenLayers.Geometry.LinearRing(points)]
                     )
                 );
             }
diff --git a/lib/OpenLayers/Format/CQL.js b/lib/OpenLayers/Format/CQL.js
index fa88d2a..8430a8b 100644
--- a/lib/OpenLayers/Format/CQL.js
+++ b/lib/OpenLayers/Format/CQL.js
@@ -1,10 +1,13 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
  * @requires OpenLayers/Format/WKT.js
+ * @requires OpenLayers/Filter/Comparison.js
+ * @requires OpenLayers/Filter/Logical.js
+ * @requires OpenLayers/Filter/Spatial.js
  */
 
 /**
@@ -25,9 +28,10 @@ OpenLayers.Format.CQL = (function() {
     patterns = {
         PROPERTY: /^[_a-zA-Z]\w*/,
         COMPARISON: /^(=|<>|<=|<|>=|>|LIKE)/i,
+        IS_NULL: /^IS NULL/i,
         COMMA: /^,/,
         LOGICAL: /^(AND|OR)/i,
-        VALUE: /^('\w+'|\d+(\.\d*)?|\.\d+)/,
+        VALUE: /^('([^']|'')*'|\d+(\.\d*)?|\.\d+)/,
         LPAREN: /^\(/,
         RPAREN: /^\)/,
         SPATIAL: /^(BBOX|INTERSECTS|DWITHIN|WITHIN|CONTAINS)/i,
@@ -63,8 +67,9 @@ OpenLayers.Format.CQL = (function() {
     follows = {
         LPAREN: ['GEOMETRY', 'SPATIAL', 'PROPERTY', 'VALUE', 'LPAREN'],
         RPAREN: ['NOT', 'LOGICAL', 'END', 'RPAREN'],
-        PROPERTY: ['COMPARISON', 'BETWEEN', 'COMMA'],
+        PROPERTY: ['COMPARISON', 'BETWEEN', 'COMMA', 'IS_NULL'],
         BETWEEN: ['VALUE'],
+        IS_NULL: ['END'],
         COMPARISON: ['VALUE'],
         COMMA: ['GEOMETRY', 'VALUE', 'PROPERTY'],
         VALUE: ['LOGICAL', 'COMMA', 'RPAREN', 'END'],
@@ -82,7 +87,8 @@ OpenLayers.Format.CQL = (function() {
         '>': OpenLayers.Filter.Comparison.GREATER_THAN,
         '>=': OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO,
         'LIKE': OpenLayers.Filter.Comparison.LIKE,
-        'BETWEEN': OpenLayers.Filter.Comparison.BETWEEN
+        'BETWEEN': OpenLayers.Filter.Comparison.BETWEEN,
+        'IS NULL': OpenLayers.Filter.Comparison.IS_NULL
     },
 
     operatorReverse = {},
@@ -178,6 +184,7 @@ OpenLayers.Format.CQL = (function() {
                     break;
                 case "COMPARISON":
                 case "BETWEEN":
+                case "IS_NULL":
                 case "LOGICAL":
                     var p = precedence[tok.type];
 
@@ -254,9 +261,16 @@ OpenLayers.Format.CQL = (function() {
                         value: value,
                         type: operators[tok.text.toUpperCase()]
                     });
+                case "IS_NULL":
+                    var property = buildTree();
+                    return new OpenLayers.Filter.Comparison({
+                        property: property,
+                        type: operators[tok.text.toUpperCase()]
+                    });
                 case "VALUE":
-                    if ((/^'.*'$/).test(tok.text)) {
-                        return tok.text.substr(1, tok.text.length - 2);
+                    var match = tok.text.match(/^'(.*)'$/);
+                    if (match) {
+                        return match[1].replace(/''/g, "'");
                     } else {
                         return Number(tok.text);
                     }
@@ -415,14 +429,14 @@ OpenLayers.Format.CQL = (function() {
                             this.write(filter.lowerBoundary) + " AND " + 
                             this.write(filter.upperBoundary);
                     } else {
-                        
-                        return filter.property +
+                        return (filter.value !== null) ? filter.property +
                             " " + operatorReverse[filter.type] + " " + 
-                            this.write(filter.value);
+                            this.write(filter.value) : filter.property +
+                            " " + operatorReverse[filter.type];
                     }
                 case undefined:
                     if (typeof filter === "string") {
-                        return "'" + filter + "'";
+                        return "'" + filter.replace(/'/g, "''") + "'";
                     } else if (typeof filter === "number") {
                         return String(filter);
                     }
diff --git a/lib/OpenLayers/Format/CSWGetDomain.js b/lib/OpenLayers/Format/CSWGetDomain.js
index dd46949..18d5328 100644
--- a/lib/OpenLayers/Format/CSWGetDomain.js
+++ b/lib/OpenLayers/Format/CSWGetDomain.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js b/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js
index 831a16e..78200ea 100644
--- a/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js
+++ b/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/CSWGetRecords.js b/lib/OpenLayers/Format/CSWGetRecords.js
index 74146a7..923c548 100644
--- a/lib/OpenLayers/Format/CSWGetRecords.js
+++ b/lib/OpenLayers/Format/CSWGetRecords.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js b/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js
index 9b2274d..3c87612 100644
--- a/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js
+++ b/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/Context.js b/lib/OpenLayers/Format/Context.js
index 7fc2e52..73d6203 100644
--- a/lib/OpenLayers/Format/Context.js
+++ b/lib/OpenLayers/Format/Context.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/EncodedPolyline.js b/lib/OpenLayers/Format/EncodedPolyline.js
new file mode 100644
index 0000000..e10e8b2
--- /dev/null
+++ b/lib/OpenLayers/Format/EncodedPolyline.js
@@ -0,0 +1,557 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/Format.js
+ * @requires OpenLayers/Feature/Vector.js
+ */
+
+/**
+ * Class: OpenLayers.Format.EncodedPolyline
+ * Class for reading and writing encoded polylines.  Create a new instance
+ * with the <OpenLayers.Format.EncodedPolyline> constructor.
+ *
+ * Inherits from:
+ *  - <OpenLayers.Format>
+ */
+OpenLayers.Format.EncodedPolyline = OpenLayers.Class(OpenLayers.Format, {
+
+    /**
+     * APIProperty: geometryType
+     * {String} Geometry type to output. One of: linestring (default),
+     *     linearring, point, multipoint or polygon. If the geometryType is
+     *     point, only the first point of the string is returned.
+     */
+    geometryType: "linestring",
+
+    /**
+     * Constructor: OpenLayers.Format.EncodedPolyline
+     * Create a new parser for encoded polylines
+     *
+     * Parameters:
+     * options - {Object} An optional object whose properties will be set on
+     *           this instance
+     *
+     * Returns:
+     * {<OpenLayers.Format.EncodedPolyline>} A new encoded polylines parser.
+     */
+    initialize: function(options) {
+        OpenLayers.Format.prototype.initialize.apply(this, [options]);
+    },
+
+    /**
+     * APIMethod: read
+     * Deserialize an encoded polyline string and return a vector feature.
+     *
+     * Parameters:
+     * encoded - {String} An encoded polyline string
+     *
+     * Returns:
+     * {<OpenLayers.Feature.Vector>} A vector feature with a linestring.
+     */
+    read: function(encoded) {
+        var geomType;
+        if (this.geometryType == "linestring")
+            geomType = OpenLayers.Geometry.LineString;
+        else if (this.geometryType == "linearring")
+            geomType = OpenLayers.Geometry.LinearRing;
+        else if (this.geometryType == "multipoint")
+            geomType = OpenLayers.Geometry.MultiPoint;
+        else if (this.geometryType != "point" && this.geometryType != "polygon")
+            return null;
+
+        var flatPoints = this.decodeDeltas(encoded, 2);
+        var flatPointsLength = flatPoints.length;
+
+        var pointGeometries = [];
+        for (var i = 0; i + 1 < flatPointsLength;) {
+            var y = flatPoints[i++], x = flatPoints[i++];
+            pointGeometries.push(new OpenLayers.Geometry.Point(x, y));
+        }
+
+
+        if (this.geometryType == "point")
+            return new OpenLayers.Feature.Vector(
+                pointGeometries[0]
+            );
+
+        if (this.geometryType == "polygon")
+            return new OpenLayers.Feature.Vector(
+                new OpenLayers.Geometry.Polygon([
+                    new OpenLayers.Geometry.LinearRing(pointGeometries)
+                ])
+            );
+
+        return new OpenLayers.Feature.Vector(
+            new geomType(pointGeometries)
+        );
+    },
+
+    /**
+     * APIMethod: decode
+     * Deserialize an encoded string and return an array of n-dimensional
+     * points.
+     *
+     * Parameters:
+     * encoded - {String} An encoded string
+     * dims - {int} The dimension of the points that are returned
+     *
+     * Returns:
+     * {Array(Array(int))} An array containing n-dimensional arrays of
+     *     coordinates.
+     */
+    decode: function(encoded, dims, opt_factor) {
+        var factor = opt_factor || 1e5;
+        var flatPoints = this.decodeDeltas(encoded, dims, factor);
+        var flatPointsLength = flatPoints.length;
+
+        var points = [];
+        for (var i = 0; i + (dims - 1) < flatPointsLength;) {
+            var point = [];
+
+            for (var dim = 0; dim < dims; ++dim) {
+                point.push(flatPoints[i++])
+            }
+
+            points.push(point);
+        }
+
+        return points;
+    },
+
+    /**
+     * APIMethod: write
+     * Serialize a feature or array of features into a WKT string.
+     *
+     * Parameters:
+     * features - {<OpenLayers.Feature.Vector>|Array} A feature or array of
+     *            features
+     *
+     * Returns:
+     * {String} The WKT string representation of the input geometries
+     */
+    write: function(features) {
+        var feature;
+        if (features.constructor == Array)
+            feature = features[0];
+        else
+            feature = features;
+
+        var geometry = feature.geometry;
+        var type = geometry.CLASS_NAME.split('.')[2].toLowerCase();
+
+        var pointGeometries;
+        if (type == "point")
+            pointGeometries = new Array(geometry);
+        else if (type == "linestring" ||
+                 type == "linearring" ||
+                 type == "multipoint")
+            pointGeometries = geometry.components;
+        else if (type == "polygon")
+            pointGeometries = geometry.components[0].components;
+        else
+            return null;
+
+        var flatPoints = [];
+
+        var pointGeometriesLength = pointGeometries.length;
+        for (var i = 0; i < pointGeometriesLength; ++i) {
+            var pointGeometry = pointGeometries[i];
+            flatPoints.push(pointGeometry.y);
+            flatPoints.push(pointGeometry.x);
+        }
+
+        return this.encodeDeltas(flatPoints, 2);
+    },
+
+    /**
+     * APIMethod: encode
+     * Serialize an array of n-dimensional points and return an encoded string
+     *
+     * Parameters:
+     * points - {Array(Array(int))} An array containing n-dimensional
+     *          arrays of coordinates
+     * dims - {int} The dimension of the points that should be read
+     *
+     * Returns:
+     * {String} An encoded string
+     */
+    encode: function (points, dims, opt_factor) {
+        var factor = opt_factor || 1e5;
+        var flatPoints = [];
+
+        var pointsLength = points.length;
+        for (var i = 0; i < pointsLength; ++i) {
+            var point = points[i];
+
+            for (var dim = 0; dim < dims; ++dim) {
+                flatPoints.push(point[dim]);
+            }
+        }
+
+        return this.encodeDeltas(flatPoints, dims, factor);
+    },
+
+    /**
+     * APIMethod: encodeDeltas
+     * Encode a list of n-dimensional points and return an encoded string
+     *
+     * Attention: This function will modify the passed array!
+     *
+     * Parameters:
+     * numbers - {Array.<number>} A list of n-dimensional points.
+     * dimension - {number} The dimension of the points in the list.
+     * opt_factor - {number=} The factor by which the numbers will be
+     * multiplied. The remaining decimal places will get rounded away.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeDeltas: function(numbers, dimension, opt_factor) {
+      var factor = opt_factor || 1e5;
+      var d;
+
+      var lastNumbers = new Array(dimension);
+      for (d = 0; d < dimension; ++d) {
+        lastNumbers[d] = 0;
+      }
+
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength;) {
+        for (d = 0; d < dimension; ++d, ++i) {
+          var num = numbers[i];
+          var delta = num - lastNumbers[d];
+          lastNumbers[d] = num;
+
+          numbers[i] = delta;
+        }
+      }
+
+      return this.encodeFloats(numbers, factor);
+    },
+
+
+    /**
+     * APIMethod: decodeDeltas
+     * Decode a list of n-dimensional points from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     * dimension - {number} The dimension of the points in the encoded string.
+     * opt_factor - {number=} The factor by which the resulting numbers will
+     * be divided.
+     *
+     * Returns:
+     * {Array.<number>} A list of n-dimensional points.
+     */
+    decodeDeltas: function(encoded, dimension, opt_factor) {
+      var factor = opt_factor || 1e5;
+      var d;
+
+      var lastNumbers = new Array(dimension);
+      for (d = 0; d < dimension; ++d) {
+        lastNumbers[d] = 0;
+      }
+
+      var numbers = this.decodeFloats(encoded, factor);
+
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength;) {
+        for (d = 0; d < dimension; ++d, ++i) {
+          lastNumbers[d] += numbers[i];
+
+          numbers[i] = lastNumbers[d];
+        }
+      }
+
+      return numbers;
+    },
+
+
+    /**
+     * APIMethod: encodeFloats
+     * Encode a list of floating point numbers and return an encoded string
+     *
+     * Attention: This function will modify the passed array!
+     *
+     * Parameters:
+     * numbers - {Array.<number>} A list of floating point numbers.
+     * opt_factor - {number=} The factor by which the numbers will be
+     * multiplied. The remaining decimal places will get rounded away.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeFloats: function(numbers, opt_factor) {
+      var factor = opt_factor || 1e5;
+
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength; ++i) {
+        numbers[i] = Math.round(numbers[i] * factor);
+      }
+
+      return this.encodeSignedIntegers(numbers);
+    },
+
+
+    /**
+     * APIMethod: decodeFloats
+     * Decode a list of floating point numbers from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     * opt_factor - {number=} The factor by which the result will be divided.
+     *
+     * Returns:
+     * {Array.<number>} A list of floating point numbers.
+     */
+    decodeFloats: function(encoded, opt_factor) {
+      var factor = opt_factor || 1e5;
+
+      var numbers = this.decodeSignedIntegers(encoded);
+
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength; ++i) {
+        numbers[i] /= factor;
+      }
+
+      return numbers;
+    },
+
+
+    /**
+     * APIMethod: encodeSignedIntegers
+     * Encode a list of signed integers and return an encoded string
+     *
+     * Attention: This function will modify the passed array!
+     *
+     * Parameters:
+     * numbers - {Array.<number>} A list of signed integers.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeSignedIntegers: function(numbers) {
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength; ++i) {
+        var num = numbers[i];
+
+        var signedNum = num << 1;
+        if (num < 0) {
+          signedNum = ~(signedNum);
+        }
+
+        numbers[i] = signedNum;
+      }
+
+      return this.encodeUnsignedIntegers(numbers);
+    },
+
+
+    /**
+     * APIMethod: decodeSignedIntegers
+     * Decode a list of signed integers from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     *
+     * Returns:
+     * {Array.<number>} A list of signed integers.
+     */
+    decodeSignedIntegers: function(encoded) {
+      var numbers = this.decodeUnsignedIntegers(encoded);
+
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength; ++i) {
+        var num = numbers[i];
+        numbers[i] = (num & 1) ? ~(num >> 1) : (num >> 1);
+      }
+
+      return numbers;
+    },
+
+
+    /**
+     * APIMethod: encodeUnsignedIntegers
+     * Encode a list of unsigned integers and return an encoded string
+     *
+     * Parameters:
+     * numbers - {Array.<number>} A list of unsigned integers.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeUnsignedIntegers: function(numbers) {
+      var encoded = '';
+
+      var numbersLength = numbers.length;
+      for (var i = 0; i < numbersLength; ++i) {
+        encoded += this.encodeUnsignedInteger(numbers[i]);
+      }
+
+      return encoded;
+    },
+
+
+    /**
+     * APIMethod: decodeUnsignedIntegers
+     * Decode a list of unsigned integers from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     *
+     * Returns:
+     * {Array.<number>} A list of unsigned integers.
+     */
+    decodeUnsignedIntegers: function(encoded) {
+      var numbers = [];
+
+      var current = 0;
+      var shift = 0;
+
+      var encodedLength = encoded.length;
+      for (var i = 0; i < encodedLength; ++i) {
+        var b = encoded.charCodeAt(i) - 63;
+
+        current |= (b & 0x1f) << shift;
+
+        if (b < 0x20) {
+          numbers.push(current);
+          current = 0;
+          shift = 0;
+        } else {
+          shift += 5;
+        }
+      }
+
+      return numbers;
+    },
+
+
+    /**
+     * Method: encodeFloat
+     * Encode one single floating point number and return an encoded string
+     *
+     * Parameters:
+     * num - {number} Floating point number that should be encoded.
+     * opt_factor - {number=} The factor by which num will be multiplied.
+     * The remaining decimal places will get rounded away.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeFloat: function(num, opt_factor) {
+      num = Math.round(num * (opt_factor || 1e5));
+      return this.encodeSignedInteger(num);
+    },
+
+
+    /**
+     * Method: decodeFloat
+     * Decode one single floating point number from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     * opt_factor - {number=} The factor by which the result will be divided.
+     *
+     * Returns:
+     * {number} The decoded floating point number.
+     */
+    decodeFloat: function(encoded, opt_factor) {
+      var result = this.decodeSignedInteger(encoded);
+      return result / (opt_factor || 1e5);
+    },
+
+
+    /**
+     * Method: encodeSignedInteger
+     * Encode one single signed integer and return an encoded string
+     *
+     * Parameters:
+     * num - {number} Signed integer that should be encoded.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeSignedInteger: function(num) {
+      var signedNum = num << 1;
+      if (num < 0) {
+        signedNum = ~(signedNum);
+      }
+
+      return this.encodeUnsignedInteger(signedNum);
+    },
+
+
+    /**
+     * Method: decodeSignedInteger
+     * Decode one single signed integer from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     *
+     * Returns:
+     * {number} The decoded signed integer.
+     */
+    decodeSignedInteger: function(encoded) {
+      var result = this.decodeUnsignedInteger(encoded);
+      return ((result & 1) ? ~(result >> 1) : (result >> 1));
+    },
+
+
+    /**
+     * Method: encodeUnsignedInteger
+     * Encode one single unsigned integer and return an encoded string
+     *
+     * Parameters:
+     * num - {number} Unsigned integer that should be encoded.
+     *
+     * Returns:
+     * {string} The encoded string.
+     */
+    encodeUnsignedInteger: function(num) {
+      var value, encoded = '';
+      while (num >= 0x20) {
+        value = (0x20 | (num & 0x1f)) + 63;
+        encoded += (String.fromCharCode(value));
+        num >>= 5;
+      }
+      value = num + 63;
+      encoded += (String.fromCharCode(value));
+      return encoded;
+    },
+
+
+    /**
+     * Method: decodeUnsignedInteger
+     * Decode one single unsigned integer from an encoded string
+     *
+     * Parameters:
+     * encoded - {string} An encoded string.
+     *
+     * Returns:
+     * {number} The decoded unsigned integer.
+     */
+    decodeUnsignedInteger: function(encoded) {
+      var result = 0;
+      var shift = 0;
+
+      var encodedLength = encoded.length;
+      for (var i = 0; i < encodedLength; ++i) {
+        var b = encoded.charCodeAt(i) - 63;
+
+        result |= (b & 0x1f) << shift;
+
+        if (b < 0x20)
+          break;
+
+        shift += 5;
+      }
+
+      return result;
+    },
+
+    CLASS_NAME: "OpenLayers.Format.EncodedPolyline"
+});
diff --git a/lib/OpenLayers/Format/Filter.js b/lib/OpenLayers/Format/Filter.js
index 664b294..59c06a8 100644
--- a/lib/OpenLayers/Format/Filter.js
+++ b/lib/OpenLayers/Format/Filter.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -12,7 +12,7 @@
 
 /**
  * Class: OpenLayers.Format.Filter
- * Read/Wite ogc:Filter. Create a new instance with the <OpenLayers.Format.Filter>
+ * Read/Write ogc:Filter. Create a new instance with the <OpenLayers.Format.Filter>
  *     constructor.
  * 
  * Inherits from:
diff --git a/lib/OpenLayers/Format/Filter/v1.js b/lib/OpenLayers/Format/Filter/v1.js
index 7d7fc76..539ec0f 100644
--- a/lib/OpenLayers/Format/Filter/v1.js
+++ b/lib/OpenLayers/Format/Filter/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,6 +6,7 @@
  * @requires OpenLayers/Format/Filter.js
  * @requires OpenLayers/Format/XML.js
  * @requires OpenLayers/Filter/Function.js
+ * @requires OpenLayers/BaseTypes/Date.js
  */
 
 /**
@@ -27,7 +28,7 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
         xlink: "http://www.w3.org/1999/xlink",
         xsi: "http://www.w3.org/2001/XMLSchema-instance"
     },
-    
+
     /**
      * Property: defaultPrefix
      */
@@ -180,18 +181,18 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "Literal": function(node, obj) {
                 obj.value = OpenLayers.String.numericIf(
-                    this.getChildValue(node));
+                    this.getChildValue(node), true);
             },
             "PropertyName": function(node, filter) {
                 filter.property = this.getChildValue(node);
             },
             "LowerBoundary": function(node, filter) {
                 filter.lowerBoundary = OpenLayers.String.numericIf(
-                    this.readers.ogc._expression.call(this, node));
+                    this.readers.ogc._expression.call(this, node), true);
             },
             "UpperBoundary": function(node, filter) {
                 filter.upperBoundary = OpenLayers.String.numericIf(
-                    this.readers.ogc._expression.call(this, node));
+                    this.readers.ogc._expression.call(this, node), true);
             },
             "Intersects": function(node, obj) {
                 this.readSpatial(node, obj, OpenLayers.Filter.Spatial.INTERSECTS);
@@ -212,6 +213,13 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
             "Function": function(node, obj) {
                 //TODO write decoder for it
                 return;
+            },
+            "PropertyIsNull": function(node, obj) {
+                var filter = new OpenLayers.Filter.Comparison({
+                    type: OpenLayers.Filter.Comparison.IS_NULL
+                });
+                this.readChildNodes(node, filter);
+                obj.filters.push(filter);
             }
         }
     },
@@ -240,6 +248,25 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
     },
 
     /**
+     * APIMethod: encodeLiteral
+     * Generates the string representation of a value for use in <Literal> 
+     *     elements.  The default encoder writes Date values as ISO 8601 
+     *     strings.
+     *
+     * Parameters:
+     * value - {Object} Literal value to encode
+     *
+     * Returns:
+     * {String} String representation of the provided value.
+     */
+    encodeLiteral: function(value) {
+        if (value instanceof Date) {
+            value = OpenLayers.Date.toISOString(value);
+        }
+        return value;
+    },
+
+    /**
      * Method: writeOgcExpression
      * Limited support for writing OGC expressions. Currently it supports
      * (<OpenLayers.Filter.Function> || String || Number)
@@ -252,9 +279,8 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
      * {DOMElement} Updated node element.
      */
     writeOgcExpression: function(value, node) {
-        if(value instanceof OpenLayers.Filter.Function){
-            var child = this.writeNode("Function", value, node);
-            node.appendChild(child);
+        if (value instanceof OpenLayers.Filter.Function){
+            this.writeNode("Function", value, node);
         } else {
             this.writeNode("Literal", value, node);
         }
@@ -275,19 +301,6 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
     },
     
     /**
-     * Method: writeFeatureIdNodes
-     * 
-     * Parameters:
-     * filter - {<OpenLayers.Filter.FeatureId}
-     * node - {DOMElement}
-     */
-    writeFeatureIdNodes: function(filter, node) {
-        for (var i=0, ii=filter.fids.length; i<ii; ++i) {
-            this.writeNode("FeatureId", filter.fids[i], node);
-        }
-    },
-    
-    /**
      * Property: writers
      * As a compliment to the readers property, this structure contains public
      *     writing functions grouped by namespace alias and named like the
@@ -297,10 +310,13 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
         "ogc": {
             "Filter": function(filter) {
                 var node = this.createElementNSPlus("ogc:Filter");
-                if (filter.type === "FID") {
-                    OpenLayers.Format.Filter.v1.prototype.writeFeatureIdNodes.call(this, filter, node);
-                } else {
-                    this.writeNode(this.getFilterType(filter), filter, node);
+                this.writeNode(this.getFilterType(filter), filter, node);
+                return node;
+            },
+            "_featureIds": function(filter) {
+                var node = this.createDocumentFragment();
+                for (var i=0, ii=filter.fids.length; i<ii; ++i) {
+                    this.writeNode("ogc:FeatureId", filter.fids[i], node);
                 }
                 return node;
             },
@@ -314,14 +330,10 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
                 var childFilter;
                 for (var i=0, ii=filter.filters.length; i<ii; ++i) {
                     childFilter = filter.filters[i];
-                    if (childFilter.type === "FID") {
-                        OpenLayers.Format.Filter.v1.prototype.writeFeatureIdNodes.call(this, childFilter, node);
-                    } else {
                     this.writeNode(
                         this.getFilterType(childFilter), childFilter, node
                     );
                 }
-                }
                 return node;
             },
             "Or": function(filter) {
@@ -329,26 +341,18 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
                 var childFilter;
                 for (var i=0, ii=filter.filters.length; i<ii; ++i) {
                     childFilter = filter.filters[i];
-                    if (childFilter.type === "FID") {
-                        OpenLayers.Format.Filter.v1.prototype.writeFeatureIdNodes.call(this, childFilter, node);
-                    } else {
                     this.writeNode(
                         this.getFilterType(childFilter), childFilter, node
                     );
                 }
-                }
                 return node;
             },
             "Not": function(filter) {
                 var node = this.createElementNSPlus("ogc:Not");
                 var childFilter = filter.filters[0];
-                if (childFilter.type === "FID") {
-                    OpenLayers.Format.Filter.v1.prototype.writeFeatureIdNodes.call(this, childFilter, node);
-                } else {
                 this.writeNode(
                     this.getFilterType(childFilter), childFilter, node
                 );
-                }
                 return node;
             },
             "PropertyIsLessThan": function(filter) {
@@ -398,9 +402,10 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
                 });
             },
             "Literal": function(value) {
-                // no ogc:expression handling for now
+                var encode = this.encodeLiteral ||
+                    OpenLayers.Format.Filter.v1.prototype.encodeLiteral;
                 return this.createElementNSPlus("ogc:Literal", {
-                    value: value
+                    value: encode(value)
                 });
             },
             "LowerBoundary": function(filter) {
@@ -448,6 +453,11 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
                     this.writeOgcExpression(params[i], node);
                 }
                 return node;
+            },
+            "PropertyIsNull": function(filter) {
+                var node = this.createElementNSPlus("ogc:PropertyIsNull");
+                this.writeNode("PropertyName", filter, node);
+                return node;
             }
         }
     },
@@ -480,12 +490,13 @@ OpenLayers.Format.Filter.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
         ">=": "PropertyIsGreaterThanOrEqualTo",
         "..": "PropertyIsBetween",
         "~": "PropertyIsLike",
+        "NULL": "PropertyIsNull",
         "BBOX": "BBOX",
         "DWITHIN": "DWITHIN",
         "WITHIN": "WITHIN",
         "CONTAINS": "CONTAINS",
         "INTERSECTS": "INTERSECTS",
-        "FID": "FeatureId"
+        "FID": "_featureIds"
     },
 
     CLASS_NAME: "OpenLayers.Format.Filter.v1" 
diff --git a/lib/OpenLayers/Format/Filter/v1_0_0.js b/lib/OpenLayers/Format/Filter/v1_0_0.js
index 1a4a066..52e650e 100644
--- a/lib/OpenLayers/Format/Filter/v1_0_0.js
+++ b/lib/OpenLayers/Format/Filter/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/Filter/v1_1_0.js b/lib/OpenLayers/Format/Filter/v1_1_0.js
index dea957b..628c489 100644
--- a/lib/OpenLayers/Format/Filter/v1_1_0.js
+++ b/lib/OpenLayers/Format/Filter/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/GML.js b/lib/OpenLayers/Format/GML.js
index eb39180..467f875 100644
--- a/lib/OpenLayers/Format/GML.js
+++ b/lib/OpenLayers/Format/GML.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -16,7 +16,7 @@
 
 /**
  * Class: OpenLayers.Format.GML
- * Read/Wite GML. Create a new instance with the <OpenLayers.Format.GML>
+ * Read/Write GML. Create a new instance with the <OpenLayers.Format.GML>
  *     constructor.  Supports the GML simple features profile.
  * 
  * Inherits from:
diff --git a/lib/OpenLayers/Format/GML/Base.js b/lib/OpenLayers/Format/GML/Base.js
index b7608e3..6c49969 100644
--- a/lib/OpenLayers/Format/GML/Base.js
+++ b/lib/OpenLayers/Format/GML/Base.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -230,7 +230,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
         }
         return OpenLayers.Format.XML.prototype.readNode.apply(this, [node, obj]);
     },
-
+    
     /**
      * Property: readers
      * Contains public functions, grouped by namespace prefix, that will
@@ -241,6 +241,9 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
      */
     readers: {
         "gml": {
+            "_inherit": function(node, obj, container) {
+                // To be implemented by version specific parsers
+            },
             "featureMember": function(node, obj) {
                 this.readChildNodes(node, obj);
             },
@@ -309,6 +312,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "MultiPoint": function(node, container) {
                 var obj = {components: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 container.components = [
                     new OpenLayers.Geometry.MultiPoint(obj.components)
@@ -319,6 +323,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "LineString": function(node, container) {
                 var obj = {};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 if(!container.components) {
                     container.components = [];
@@ -329,6 +334,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "MultiLineString": function(node, container) {
                 var obj = {components: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 container.components = [
                     new OpenLayers.Geometry.MultiLineString(obj.components)
@@ -339,6 +345,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "Polygon": function(node, container) {
                 var obj = {outer: null, inner: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 obj.inner.unshift(obj.outer);
                 if(!container.components) {
@@ -350,6 +357,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "LinearRing": function(node, obj) {
                 var container = {};
+                this.readers.gml._inherit.apply(this, [node, container]);
                 this.readChildNodes(node, container);
                 obj.components = [new OpenLayers.Geometry.LinearRing(
                     container.points
@@ -357,6 +365,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "MultiPolygon": function(node, container) {
                 var obj = {components: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 container.components = [
                     new OpenLayers.Geometry.MultiPolygon(obj.components)
@@ -367,6 +376,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
             },
             "GeometryCollection": function(node, container) {
                 var obj = {components: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 container.components = [
                     new OpenLayers.Geometry.Collection(obj.components)
diff --git a/lib/OpenLayers/Format/GML/v2.js b/lib/OpenLayers/Format/GML/v2.js
index ad0d7a6..bd26b99 100644
--- a/lib/OpenLayers/Format/GML/v2.js
+++ b/lib/OpenLayers/Format/GML/v2.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/GML/v3.js b/lib/OpenLayers/Format/GML/v3.js
index 5be5297..82c7b1e 100644
--- a/lib/OpenLayers/Format/GML/v3.js
+++ b/lib/OpenLayers/Format/GML/v3.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -90,11 +90,20 @@ OpenLayers.Format.GML.v3 = OpenLayers.Class(OpenLayers.Format.GML.Base, {
      */
     readers: {
         "gml": OpenLayers.Util.applyDefaults({
+            "_inherit": function(node, obj, container) {
+                // SRSReferenceGroup attributes
+                var dim = parseInt(node.getAttribute("srsDimension"), 10) ||
+                    (container && container.srsDimension);
+                if (dim) {
+                    obj.srsDimension = dim;
+                }
+            },
             "featureMembers": function(node, obj) {
                 this.readChildNodes(node, obj);
             },
             "Curve": function(node, container) {
                 var obj = {points: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 if(!container.components) {
                     container.components = [];
@@ -135,7 +144,9 @@ OpenLayers.Format.GML.v3 = OpenLayers.Class(OpenLayers.Format.GML.Base, {
                     this.regExes.trimSpace, ""
                 );
                 var coords = str.split(this.regExes.splitSpace);
-                var dim = parseInt(node.getAttribute("dimension")) || 2;
+                // The "dimension" attribute is from the GML 3.0.1 spec.
+                var dim = obj.srsDimension ||
+                    parseInt(node.getAttribute("srsDimension") || node.getAttribute("dimension"), 10) || 2;
                 var j, x, y, z;
                 var numPoints = coords.length / dim;
                 var points = new Array(numPoints);
@@ -172,6 +183,7 @@ OpenLayers.Format.GML.v3 = OpenLayers.Class(OpenLayers.Format.GML.Base, {
             },
             "MultiCurve": function(node, container) {
                 var obj = {components: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 if(obj.components.length > 0) {
                     container.components = [
@@ -184,6 +196,7 @@ OpenLayers.Format.GML.v3 = OpenLayers.Class(OpenLayers.Format.GML.Base, {
             },
             "MultiSurface": function(node, container) {
                 var obj = {components: []};
+                this.readers.gml._inherit.apply(this, [node, obj, container]);
                 this.readChildNodes(node, obj);
                 if(obj.components.length > 0) {
                     container.components = [
diff --git a/lib/OpenLayers/Format/GPX.js b/lib/OpenLayers/Format/GPX.js
index c8d4478..16a8056 100644
--- a/lib/OpenLayers/Format/GPX.js
+++ b/lib/OpenLayers/Format/GPX.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -250,11 +250,11 @@ OpenLayers.Format.GPX = OpenLayers.Class(OpenLayers.Format.XML, {
      */
     buildMetadataNode: function(metadata) {
         var types = ['name', 'desc', 'author'],
-            node = this.createElementNSPlus('gpx:metadata');
+            node = this.createElementNS(this.namespaces.gpx, 'metadata');
         for (var i=0; i < types.length; i++) {
             var type = types[i];
             if (metadata[type]) {
-                var n = this.createElementNSPlus("gpx:" + type);
+                var n = this.createElementNS(this.namespaces.gpx, type);
                 n.appendChild(this.createTextNode(metadata[type]));
                 node.appendChild(n);
             }
@@ -284,7 +284,7 @@ OpenLayers.Format.GPX = OpenLayers.Class(OpenLayers.Format.XML, {
             this.appendAttributesNode(wpt, feature);
             return wpt;
         } else {
-            var trkNode = this.createElementNSPlus("gpx:trk");
+            var trkNode = this.createElementNS(this.namespaces.gpx, "trk");
             this.appendAttributesNode(trkNode, feature);
             var trkSegNodes = this.buildTrkSegNode(geometry);
             trkSegNodes = OpenLayers.Util.isArray(trkSegNodes) ?
@@ -312,7 +312,7 @@ OpenLayers.Format.GPX = OpenLayers.Class(OpenLayers.Format.XML, {
             nodes;
         if (geometry.CLASS_NAME == "OpenLayers.Geometry.LineString" ||
             geometry.CLASS_NAME == "OpenLayers.Geometry.LinearRing") {
-            node = this.createElementNSPlus("gpx:trkseg");
+            node = this.createElementNS(this.namespaces.gpx, "trkseg");
             for (i = 0, len=geometry.components.length; i < len; i++) {
                 point = geometry.components[i];
                 node.appendChild(this.buildTrkPtNode(point));
@@ -338,7 +338,7 @@ OpenLayers.Format.GPX = OpenLayers.Class(OpenLayers.Format.XML, {
      * {DOMElement} A trkpt node
      */
     buildTrkPtNode: function(point) {
-        var node = this.createElementNSPlus("gpx:trkpt");
+        var node = this.createElementNS(this.namespaces.gpx, "trkpt");
         node.setAttribute("lon", point.x);
         node.setAttribute("lat", point.y);
         return node;
@@ -355,7 +355,7 @@ OpenLayers.Format.GPX = OpenLayers.Class(OpenLayers.Format.XML, {
      * {DOMElement} A wpt node
      */
     buildWptNode: function(geometry) {
-        var node = this.createElementNSPlus("gpx:wpt");
+        var node = this.createElementNS(this.namespaces.gpx, "wpt");
         node.setAttribute("lon", geometry.x);
         node.setAttribute("lat", geometry.y);
         return node;
@@ -370,11 +370,11 @@ OpenLayers.Format.GPX = OpenLayers.Class(OpenLayers.Format.XML, {
      * feature - {<OpenLayers.Feature.Vector>}
      */
     appendAttributesNode: function(node, feature) {
-        var name = this.createElementNSPlus('gpx:name');
+        var name = this.createElementNS(this.namespaces.gpx, 'name');
         name.appendChild(this.createTextNode(
             feature.attributes.name || feature.id));
         node.appendChild(name);
-        var desc = this.createElementNSPlus('gpx:desc');
+        var desc = this.createElementNS(this.namespaces.gpx, 'desc');
         desc.appendChild(this.createTextNode(
             feature.attributes.description || this.defaultDesc));
         node.appendChild(desc);
diff --git a/lib/OpenLayers/Format/GeoJSON.js b/lib/OpenLayers/Format/GeoJSON.js
index 30faeb9..0e02377 100644
--- a/lib/OpenLayers/Format/GeoJSON.js
+++ b/lib/OpenLayers/Format/GeoJSON.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/GeoRSS.js b/lib/OpenLayers/Format/GeoRSS.js
index c41c6cc..cbbb4d8 100644
--- a/lib/OpenLayers/Format/GeoRSS.js
+++ b/lib/OpenLayers/Format/GeoRSS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/JSON.js b/lib/OpenLayers/Format/JSON.js
index a99478f..5b25e6a 100644
--- a/lib/OpenLayers/Format/JSON.js
+++ b/lib/OpenLayers/Format/JSON.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/KML.js b/lib/OpenLayers/Format/KML.js
index 8553fd1..e10bce7 100644
--- a/lib/OpenLayers/Format/KML.js
+++ b/lib/OpenLayers/Format/KML.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -311,8 +311,7 @@ OpenLayers.Format.KML = OpenLayers.Class(OpenLayers.Format.XML, {
 
     /**
      * Method: parseStyles
-     * Looks for <Style> nodes in the data and parses them
-     * Also parses <StyleMap> nodes, but only uses the 'normal' key
+     * Parses <Style> nodes
      * 
      * Parameters: 
      * nodes    - {Array} of {DOMElement} data to read/parse.
@@ -558,8 +557,7 @@ OpenLayers.Format.KML = OpenLayers.Class(OpenLayers.Format.XML, {
 
     /**
      * Method: parseStyleMaps
-     * Looks for <Style> nodes in the data and parses them
-     * Also parses <StyleMap> nodes, but only uses the 'normal' key
+     * Parses <StyleMap> nodes, but only uses the 'normal' key
      * 
      * Parameters: 
      * nodes    - {Array} of {DOMElement} data to read/parse.
@@ -733,7 +731,8 @@ OpenLayers.Format.KML = OpenLayers.Class(OpenLayers.Format.XML, {
                     }
                     if (this.trackAttributes) {
                         for (var j=0, jj=this.trackAttributes.length; j<jj; ++j) {
-                            feature.attributes[name] = obj.attributes[this.trackAttributes[j]][i];
+                            var name = this.trackAttributes[j];
+                            feature.attributes[name] = obj.attributes[name][i];
                         }
                     }
                     feature.attributes.when = obj.whens[i];
@@ -1212,8 +1211,8 @@ OpenLayers.Format.KML = OpenLayers.Class(OpenLayers.Format.XML, {
     createPlacemarkXML: function(feature) {        
         // Placemark name
         var placemarkName = this.createElementNS(this.kmlns, "name");
-        var name = feature.style && feature.style.label ? feature.style.label :
-                   feature.attributes.name || feature.id;
+        var label = (feature.style && feature.style.label) ? feature.style.label : feature.id;
+        var name = feature.attributes.name || label;
         placemarkName.appendChild(this.createTextNode(name));
 
         // Placemark description
diff --git a/lib/OpenLayers/Format/OGCExceptionReport.js b/lib/OpenLayers/Format/OGCExceptionReport.js
index a229af1..61a9da5 100644
--- a/lib/OpenLayers/Format/OGCExceptionReport.js
+++ b/lib/OpenLayers/Format/OGCExceptionReport.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/OSM.js b/lib/OpenLayers/Format/OSM.js
index 3cc1392..7283348 100644
--- a/lib/OpenLayers/Format/OSM.js
+++ b/lib/OpenLayers/Format/OSM.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/OWSCommon.js b/lib/OpenLayers/Format/OWSCommon.js
index cef0862..fd71820 100644
--- a/lib/OpenLayers/Format/OWSCommon.js
+++ b/lib/OpenLayers/Format/OWSCommon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/OWSCommon/v1.js b/lib/OpenLayers/Format/OWSCommon/v1.js
index bf24ea6..57ae9d2 100644
--- a/lib/OpenLayers/Format/OWSCommon/v1.js
+++ b/lib/OpenLayers/Format/OWSCommon/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -270,8 +270,8 @@ OpenLayers.Format.OWSCommon.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
      */
     writers: {
         "ows": {
-            "BoundingBox": function(options) {
-                var node = this.createElementNSPlus("ows:BoundingBox", {
+            "BoundingBox": function(options, nodeName) {
+                var node = this.createElementNSPlus(nodeName || "ows:BoundingBox", {
                     attributes: {
                         crs: options.projection
                     }
diff --git a/lib/OpenLayers/Format/OWSCommon/v1_0_0.js b/lib/OpenLayers/Format/OWSCommon/v1_0_0.js
index 7555d90..bc9852d 100644
--- a/lib/OpenLayers/Format/OWSCommon/v1_0_0.js
+++ b/lib/OpenLayers/Format/OWSCommon/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/OWSCommon/v1_1_0.js b/lib/OpenLayers/Format/OWSCommon/v1_1_0.js
index 0a3e47e..9da216c 100644
--- a/lib/OpenLayers/Format/OWSCommon/v1_1_0.js
+++ b/lib/OpenLayers/Format/OWSCommon/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/OWSContext.js b/lib/OpenLayers/Format/OWSContext.js
index 199c00b..ab38734 100644
--- a/lib/OpenLayers/Format/OWSContext.js
+++ b/lib/OpenLayers/Format/OWSContext.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/OWSContext/v0_3_1.js b/lib/OpenLayers/Format/OWSContext/v0_3_1.js
index ec899d9..d6487e8 100644
--- a/lib/OpenLayers/Format/OWSContext/v0_3_1.js
+++ b/lib/OpenLayers/Format/OWSContext/v0_3_1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -423,8 +423,11 @@ OpenLayers.Format.OWSContext.v0_3_1 = OpenLayers.Class(OpenLayers.Format.XML, {
                 return node;
             },
             "InlineGeometry": function(layer) {
-                var node = this.createElementNSPlus("InlineGeometry");
-                this.writeNode("gml:boundedBy", layer.getDataExtent(), node);
+                var node = this.createElementNSPlus("InlineGeometry"),
+                    dataExtent = layer.getDataExtent();
+                if (dataExtent !== null) {
+                    this.writeNode("gml:boundedBy", dataExtent, node);
+                }
                 for (var i=0, len=layer.features.length; i<len; i++) {
                     this.writeNode("gml:featureMember", layer.features[i], node);
                 }
diff --git a/lib/OpenLayers/Format/QueryStringFilter.js b/lib/OpenLayers/Format/QueryStringFilter.js
index 6822aee..e33f722 100644
--- a/lib/OpenLayers/Format/QueryStringFilter.js
+++ b/lib/OpenLayers/Format/QueryStringFilter.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/SLD.js b/lib/OpenLayers/Format/SLD.js
index 274c5bb..56e59d0 100644
--- a/lib/OpenLayers/Format/SLD.js
+++ b/lib/OpenLayers/Format/SLD.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -15,7 +15,7 @@
 
 /**
  * Class: OpenLayers.Format.SLD
- * Read/Wite SLD. Create a new instance with the <OpenLayers.Format.SLD>
+ * Read/Write SLD. Create a new instance with the <OpenLayers.Format.SLD>
  *     constructor.
  * 
  * Inherits from:
diff --git a/lib/OpenLayers/Format/SLD/v1.js b/lib/OpenLayers/Format/SLD/v1.js
index 79c9210..c43bac4 100644
--- a/lib/OpenLayers/Format/SLD/v1.js
+++ b/lib/OpenLayers/Format/SLD/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/SLD/v1_0_0.js b/lib/OpenLayers/Format/SLD/v1_0_0.js
index 78685fd..e920b50 100644
--- a/lib/OpenLayers/Format/SLD/v1_0_0.js
+++ b/lib/OpenLayers/Format/SLD/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js b/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js
index 40e09bc..902da67 100644
--- a/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js
+++ b/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -61,6 +61,13 @@ OpenLayers.Format.SLD.v1_0_0_GeoServer = OpenLayers.Class(
                     obj.vendorOptions = {};
                 }
                 obj.vendorOptions[node.getAttribute("name")] = this.getChildValue(node);
+            },
+            "TextSymbolizer": function(node, rule) {
+                OpenLayers.Format.SLD.v1_0_0.prototype.readers.sld.TextSymbolizer.apply(this, arguments);
+                var symbolizer = this.multipleSymbolizers ? rule.symbolizers[rule.symbolizers.length-1] : rule.symbolizer["Text"];
+                if (symbolizer.graphic === undefined) {
+                    symbolizer.graphic = false;
+                }
             }
         }, OpenLayers.Format.SLD.v1_0_0.prototype.readers["sld"])
     }, OpenLayers.Format.SLD.v1_0_0.prototype.readers),
diff --git a/lib/OpenLayers/Format/SOSCapabilities.js b/lib/OpenLayers/Format/SOSCapabilities.js
index 9361416..1abb1c8 100644
--- a/lib/OpenLayers/Format/SOSCapabilities.js
+++ b/lib/OpenLayers/Format/SOSCapabilities.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js b/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js
index fdf5693..89c0e91 100644
--- a/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js
+++ b/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js b/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js
index 2e476f9..aac2030 100644
--- a/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js
+++ b/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/SOSGetObservation.js b/lib/OpenLayers/Format/SOSGetObservation.js
index 3a927c8..9a6e2d7 100644
--- a/lib/OpenLayers/Format/SOSGetObservation.js
+++ b/lib/OpenLayers/Format/SOSGetObservation.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/Text.js b/lib/OpenLayers/Format/Text.js
index 52f7150..bf9bcd5 100644
--- a/lib/OpenLayers/Format/Text.js
+++ b/lib/OpenLayers/Format/Text.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WPSCapabilities.js b/lib/OpenLayers/Format/WCSCapabilities.js
similarity index 58%
copy from lib/OpenLayers/Format/WPSCapabilities.js
copy to lib/OpenLayers/Format/WCSCapabilities.js
index 70fae1b..934aaa5 100644
--- a/lib/OpenLayers/Format/WPSCapabilities.js
+++ b/lib/OpenLayers/Format/WCSCapabilities.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,25 +6,25 @@
 /**
  * @requires OpenLayers/Format/XML/VersionedOGC.js
  */
- 
+
 /**
- * Class: OpenLayers.Format.WPSCapabilities
- * Read WPS Capabilities.
+ * Class: OpenLayers.Format.WCSCapabilities
+ * Read WCS Capabilities.
  * 
  * Inherits from:
  *  - <OpenLayers.Format.XML.VersionedOGC>
  */
-OpenLayers.Format.WPSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.VersionedOGC, {
+OpenLayers.Format.WCSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.VersionedOGC, {
     
     /**
      * APIProperty: defaultVersion
-     * {String} Version number to assume if none found.  Default is "1.0.0".
+     * {String} Version number to assume if none found.  Default is "1.1.0".
      */
-    defaultVersion: "1.0.0",
-    
+    defaultVersion: "1.1.0",
+
     /**
-     * Constructor: OpenLayers.Format.WPSCapabilities
-     * Create a new parser for WPS Capabilities.
+     * Constructor: OpenLayers.Format.WCSCapabilities
+     * Create a new parser for WCS capabilities.
      *
      * Parameters:
      * options - {Object} An optional object whose properties will be set on
@@ -33,16 +33,15 @@ OpenLayers.Format.WPSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.Versi
 
     /**
      * APIMethod: read
-     * Read capabilities data from a string, and return information about
-     * the service.
+     * Read capabilities data from a string, and return a list of coverages. 
      * 
      * Parameters: 
      * data - {String} or {DOMElement} data to read/parse.
      *
      * Returns:
-     * {Object} Info about the WPS
+     * {Array} List of named coverages.
      */
     
-    CLASS_NAME: "OpenLayers.Format.WPSCapabilities" 
+    CLASS_NAME: "OpenLayers.Format.WCSCapabilities" 
 
 });
diff --git a/lib/OpenLayers/Format/WCSCapabilities/v1.js b/lib/OpenLayers/Format/WCSCapabilities/v1.js
new file mode 100644
index 0000000..bf8da3b
--- /dev/null
+++ b/lib/OpenLayers/Format/WCSCapabilities/v1.js
@@ -0,0 +1,55 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/Format/WCSCapabilities.js
+ */
+
+/**
+ * Class: OpenLayers.Format.WCSCapabilities.v1
+ * Abstract class not to be instantiated directly.
+ * 
+ * Inherits from:
+ *  - <OpenLayers.Format.XML>
+ */
+OpenLayers.Format.WCSCapabilities.v1 = OpenLayers.Class(
+    OpenLayers.Format.XML, {
+
+    regExes: {
+        trimSpace: (/^\s*|\s*$/g),
+        splitSpace: (/\s+/)
+    },
+
+    /**
+     * Property: defaultPrefix
+     */
+    defaultPrefix: "wcs",
+
+    /**
+     * APIMethod: read
+     * Read capabilities data from a string, and return a list of coverages. 
+     * 
+     * Parameters: 
+     * data - {String} or {DOMElement} data to read/parse.
+     *
+     * Returns:
+     * {Array} List of named coverages.
+     */
+    read: function(data) {
+        if(typeof data == "string") {
+            data = OpenLayers.Format.XML.prototype.read.apply(this, [data]);
+        }
+        var raw = data;
+        if(data && data.nodeType == 9) {
+            data = data.documentElement;
+        }
+        var capabilities = {};
+        this.readNode(data, capabilities);
+        return capabilities;
+    },
+
+    CLASS_NAME: "OpenLayers.Format.WCSCapabilities.v1" 
+
+});
\ No newline at end of file
diff --git a/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js b/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js
new file mode 100644
index 0000000..4dfa0b8
--- /dev/null
+++ b/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js
@@ -0,0 +1,170 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/Format/WCSCapabilities/v1.js
+ * @requires OpenLayers/Format/GML/v3.js
+ */
+
+/**
+ * Class: OpenLayers.Format.WCSCapabilities/v1_0_0
+ * Read WCS Capabilities version 1.0.0.
+ * 
+ * Inherits from:
+ *  - <OpenLayers.Format.WCSCapabilities.v1>
+ */
+OpenLayers.Format.WCSCapabilities.v1_0_0 = OpenLayers.Class(
+    OpenLayers.Format.WCSCapabilities.v1, {
+    
+    /**
+     * Constructor: OpenLayers.Format.WCSCapabilities.v1_0_0
+     * Create a new parser for WCS capabilities version 1.0.0.
+     *
+     * Parameters:
+     * options - {Object} An optional object whose properties will be set on
+     *     this instance.
+     */
+
+    /**
+     * Property: namespaces
+     * {Object} Mapping of namespace aliases to namespace URIs.
+     */
+    namespaces: {
+        wcs: "http://www.opengis.net/wcs",
+        xlink: "http://www.w3.org/1999/xlink",
+        xsi: "http://www.w3.org/2001/XMLSchema-instance",
+        ows: "http://www.opengis.net/ows"
+    },
+
+    /**
+     * Property: errorProperty
+     * {String} Which property of the returned object to check for in order to
+     * determine whether or not parsing has failed. In the case that the
+     * errorProperty is undefined on the returned object, the document will be
+     * run through an OGCExceptionReport parser.
+     */
+    errorProperty: "service",
+
+    /**
+     * Property: readers
+     * Contains public functions, grouped by namespace prefix, that will
+     *     be applied when a namespaced node is found matching the function
+     *     name.  The function will be applied in the scope of this parser
+     *     with two arguments: the node being read and a context object passed
+     *     from the parent.
+     */
+    readers: {
+        "wcs": {
+             "WCS_Capabilities": function(node, obj) {          
+                this.readChildNodes(node, obj);
+            },
+            "Service": function(node, obj) {
+                obj.service = {};
+                this.readChildNodes(node, obj.service);
+            },
+            "name": function(node, service) {  
+                service.name = this.getChildValue(node);
+            },
+            "label": function(node, service) {  
+                service.label = this.getChildValue(node);
+            },
+            "keywords": function(node, service) { 
+                service.keywords = []; 
+                this.readChildNodes(node, service.keywords);
+            },
+            "keyword": function(node, keywords) { 
+                // Append the keyword to the keywords list
+                keywords.push(this.getChildValue(node));      
+            },
+            "responsibleParty": function(node, service) {
+                service.responsibleParty = {};
+                this.readChildNodes(node, service.responsibleParty);   
+            },
+            "individualName": function(node, responsibleParty) {
+                responsibleParty.individualName = this.getChildValue(node);
+            },
+            "organisationName": function(node, responsibleParty) {
+                responsibleParty.organisationName = this.getChildValue(node);
+            },
+            "positionName": function(node, responsibleParty) {
+                responsibleParty.positionName = this.getChildValue(node);
+            },
+            "contactInfo": function(node, responsibleParty) {
+                responsibleParty.contactInfo = {};
+                this.readChildNodes(node, responsibleParty.contactInfo);
+            },
+            "phone": function(node, contactInfo) {
+                contactInfo.phone = {};
+                this.readChildNodes(node, contactInfo.phone);
+            },
+            "voice": function(node, phone) {
+                phone.voice = this.getChildValue(node);
+            },
+            "facsimile": function(node, phone) {
+                phone.facsimile = this.getChildValue(node);
+            },
+            "address": function(node, contactInfo) {
+                contactInfo.address = {};
+                this.readChildNodes(node, contactInfo.address);
+            },
+            "deliveryPoint": function(node, address) {
+                address.deliveryPoint = this.getChildValue(node);
+            },
+            "city": function(node, address) {
+                address.city = this.getChildValue(node);
+            },
+            "postalCode": function(node, address) {
+                address.postalCode = this.getChildValue(node);
+            },
+            "country": function(node, address) {
+                address.country = this.getChildValue(node);
+            },
+            "electronicMailAddress": function(node, address) {
+                address.electronicMailAddress = this.getChildValue(node);
+            },
+            "fees": function(node, service) {
+                service.fees = this.getChildValue(node);
+            },
+            "accessConstraints": function(node, service) {
+                service.accessConstraints = this.getChildValue(node);
+            },
+            "ContentMetadata": function(node, obj) {
+                obj.contentMetadata = [];
+                this.readChildNodes(node, obj.contentMetadata);
+            },
+            "CoverageOfferingBrief": function(node, contentMetadata) {
+                var coverageOfferingBrief = {};
+                this.readChildNodes(node, coverageOfferingBrief);
+                contentMetadata.push(coverageOfferingBrief);
+            },
+            "name": function(node, coverageOfferingBrief) {
+                coverageOfferingBrief.name = this.getChildValue(node);
+            },
+            "label": function(node, coverageOfferingBrief) {
+                coverageOfferingBrief.label = this.getChildValue(node);
+            },
+            "lonLatEnvelope": function(node, coverageOfferingBrief) {
+                var nodeList = this.getElementsByTagNameNS(node, "http://www.opengis.net/gml", "pos");
+
+                // We expect two nodes here, to create the corners of a bounding box
+                if(nodeList.length == 2) {
+                    var min = {};
+                    var max = {};
+
+                    OpenLayers.Format.GML.v3.prototype.readers["gml"].pos.apply(this, [nodeList[0], min]);
+                    OpenLayers.Format.GML.v3.prototype.readers["gml"].pos.apply(this, [nodeList[1], max]);
+
+                    coverageOfferingBrief.lonLatEnvelope = {};
+                    coverageOfferingBrief.lonLatEnvelope.srsName = node.getAttribute("srsName");
+                    coverageOfferingBrief.lonLatEnvelope.min = min.points[0];
+                    coverageOfferingBrief.lonLatEnvelope.max = max.points[0];
+                }
+            }
+        }
+    },
+    
+    CLASS_NAME: "OpenLayers.Format.WCSCapabilities.v1_0_0" 
+
+});
diff --git a/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js b/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js
new file mode 100644
index 0000000..1753c51
--- /dev/null
+++ b/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js
@@ -0,0 +1,109 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/Format/WCSCapabilities/v1.js
+ * @requires OpenLayers/Format/OWSCommon/v1_1_0.js
+ */
+
+/**
+ * Class: OpenLayers.Format.WCSCapabilities/v1_1_0
+ * Read WCS Capabilities version 1.1.0.
+ * 
+ * Inherits from:
+ *  - <OpenLayers.Format.WCSCapabilities.v1>
+ */
+OpenLayers.Format.WCSCapabilities.v1_1_0 = OpenLayers.Class(
+    OpenLayers.Format.WCSCapabilities.v1, {
+
+    /**
+     * Property: namespaces
+     * {Object} Mapping of namespace aliases to namespace URIs.
+     */
+    namespaces: {
+        wcs: "http://www.opengis.net/wcs/1.1",
+        xlink: "http://www.w3.org/1999/xlink",
+        xsi: "http://www.w3.org/2001/XMLSchema-instance",
+        ows: "http://www.opengis.net/ows/1.1"
+    },
+
+    /**
+     * APIProperty: errorProperty
+     * {String} Which property of the returned object to check for in order to
+     * determine whether or not parsing has failed. In the case that the
+     * errorProperty is undefined on the returned object, the document will be
+     * run through an OGCExceptionReport parser.
+     */
+    errorProperty: "operationsMetadata",
+
+    /**
+     * Constructor: OpenLayers.Format.WCSCapabilities.v1_1_0
+     * Create a new parser for WCS capabilities version 1.1.0.
+     *
+     * Parameters:
+     * options - {Object} An optional object whose properties will be set on
+     *     this instance.
+     */
+
+    /**
+     * Property: readers
+     * Contains public functions, grouped by namespace prefix, that will
+     *     be applied when a namespaced node is found matching the function
+     *     name.  The function will be applied in the scope of this parser
+     *     with two arguments: the node being read and a context object passed
+     *     from the parent.
+     */
+    readers: {
+        "wcs": OpenLayers.Util.applyDefaults({
+            // In 1.0.0, this was WCS_Capabilties, in 1.1.0, it's Capabilities
+            "Capabilities": function(node, obj) {           
+                this.readChildNodes(node, obj);
+            },
+            "Contents": function(node, request) {
+                request.contentMetadata = [];
+                this.readChildNodes(node, request.contentMetadata);
+            },
+            "CoverageSummary": function(node, contentMetadata) {
+                var coverageSummary = {};
+                // Read the summary:
+                this.readChildNodes(node, coverageSummary);   
+
+                // Add it to the contentMetadata array:  
+                contentMetadata.push(coverageSummary);                 
+            },
+            "Identifier": function(node, coverageSummary) {
+                coverageSummary.identifier = this.getChildValue(node);
+            },
+            "Title": function(node, coverageSummary) {
+              coverageSummary.title = this.getChildValue(node);
+            },
+            "Abstract": function(node, coverageSummary) {
+                coverageSummary["abstract"] = this.getChildValue(node);
+            },
+            "SupportedCRS": function(node, coverageSummary) {
+                var crs = this.getChildValue(node);
+                if(crs) {
+                    if(!coverageSummary.supportedCRS) { 
+                        coverageSummary.supportedCRS = [];
+                    }
+                    coverageSummary.supportedCRS.push(crs);
+                }
+            },
+            "SupportedFormat": function(node, coverageSummary) {
+                var format = this.getChildValue(node);
+                if(format) {
+                    if(!coverageSummary.supportedFormat) { 
+                        coverageSummary.supportedFormat = [];
+                    }
+                    coverageSummary.supportedFormat.push(format);
+                }
+            }
+        }, OpenLayers.Format.WCSCapabilities.v1.prototype.readers["wcs"]),
+        "ows": OpenLayers.Format.OWSCommon.v1_1_0.prototype.readers["ows"]
+    },
+
+    CLASS_NAME: "OpenLayers.Format.WCSCapabilities.v1_1_0" 
+
+});
diff --git a/lib/OpenLayers/Format/WCSGetCoverage.js b/lib/OpenLayers/Format/WCSGetCoverage.js
index 024c1a1..2817f28 100644
--- a/lib/OpenLayers/Format/WCSGetCoverage.js
+++ b/lib/OpenLayers/Format/WCSGetCoverage.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WFS.js b/lib/OpenLayers/Format/WFS.js
index c450028..44b03a3 100644
--- a/lib/OpenLayers/Format/WFS.js
+++ b/lib/OpenLayers/Format/WFS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WFSCapabilities.js b/lib/OpenLayers/Format/WFSCapabilities.js
index 8c434b4..61af085 100644
--- a/lib/OpenLayers/Format/WFSCapabilities.js
+++ b/lib/OpenLayers/Format/WFSCapabilities.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -21,15 +21,6 @@ OpenLayers.Format.WFSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.Versi
      * {String} Version number to assume if none found.  Default is "1.1.0".
      */
     defaultVersion: "1.1.0",
- 
-    /**
-     * APIProperty: errorProperty
-     * {String} Which property of the returned object to check for in order to
-     * determine whether or not parsing has failed. In the case that the
-     * errorProperty is undefined on the returned object, the document will be
-     * run through an OGCExceptionReport parser.
-     */
-    errorProperty: "service",
 
     /**
      * Constructor: OpenLayers.Format.WFSCapabilities
diff --git a/lib/OpenLayers/Format/WFSCapabilities/v1.js b/lib/OpenLayers/Format/WFSCapabilities/v1.js
index bd52c61..c4ec517 100644
--- a/lib/OpenLayers/Format/WFSCapabilities/v1.js
+++ b/lib/OpenLayers/Format/WFSCapabilities/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -28,6 +28,16 @@ OpenLayers.Format.WFSCapabilities.v1 = OpenLayers.Class(
         ows: "http://www.opengis.net/ows"
     },
 
+
+    /**
+     * APIProperty: errorProperty
+     * {String} Which property of the returned object to check for in order to
+     * determine whether or not parsing has failed. In the case that the
+     * errorProperty is undefined on the returned object, the document will be
+     * run through an OGCExceptionReport parser.
+     */
+    errorProperty: "featureTypeList",
+
     /**
      * Property: defaultPrefix
      */
diff --git a/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js b/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js
index 8f44f6e..6b202c7 100644
--- a/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js
+++ b/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js b/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js
index 1caf76e..84f6b4b 100644
--- a/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js
+++ b/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WFSDescribeFeatureType.js b/lib/OpenLayers/Format/WFSDescribeFeatureType.js
index 697035a..416e845 100644
--- a/lib/OpenLayers/Format/WFSDescribeFeatureType.js
+++ b/lib/OpenLayers/Format/WFSDescribeFeatureType.js
@@ -1,10 +1,11 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
  * @requires OpenLayers/Format/XML.js
+ * @requires OpenLayers/Format/OGCExceptionReport.js
  */
  
 /**
@@ -16,6 +17,14 @@
  */
 OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
     OpenLayers.Format.XML, {
+
+    /**
+     * Property: regExes
+     * Compiled regular expressions for manipulating strings.
+     */
+    regExes: {
+        trimSpace: (/^\s*|\s*$/g)
+    },
     
     /**
      * Property: namespaces
@@ -51,15 +60,16 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
                     complexTypes: complexTypes,
                     customTypes: customTypes
                 };
+                var i, len;
                 
                 this.readChildNodes(node, schema);
 
                 var attributes = node.attributes;
                 var attr, name;
-                for(var i=0, len=attributes.length; i<len; ++i) {
+                for(i=0, len=attributes.length; i<len; ++i) {
                     attr = attributes[i];
                     name = attr.name;
-                    if(name.indexOf("xmlns") == 0) {
+                    if(name.indexOf("xmlns") === 0) {
                         this.setNamespace(name.split(":")[1] || "", attr.value);
                     } else {
                         obj[name] = attr.value;
@@ -70,7 +80,7 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
                 
                 // map complexTypes to names of customTypes
                 var complexType, customType;
-                for(var i=0, len=complexTypes.length; i<len; ++i) {
+                for(i=0, len=complexTypes.length; i<len; ++i) {
                     complexType = complexTypes[i];
                     customType = customTypes[complexType.typeName];
                     if(customTypes[complexType.typeName]) {
@@ -102,6 +112,7 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
                 obj.properties = sequence.elements;
             },
             "element": function(node, obj) {
+                var type;
                 if(obj.elements) {
                     var element = {};
                     var attributes = node.attributes;
@@ -111,7 +122,7 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
                         element[attr.name] = attr.value;
                     }
                     
-                    var type = element.type;
+                    type = element.type;
                     if(!type) {
                         type = {};
                         this.readChildNodes(node, type);
@@ -121,10 +132,11 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
                     var fullType = type.base || type;
                     element.localType = fullType.split(":").pop();
                     obj.elements.push(element);
+                    this.readChildNodes(node, element);
                 }
                 
                 if(obj.complexTypes) {
-                    var type = node.getAttribute("type");
+                    type = node.getAttribute("type");
                     var localType = type.split(":").pop();
                     obj.customTypes[localType] = {
                         "name": node.getAttribute("name"),
@@ -132,6 +144,26 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
                     };
                 }
             },
+            "annotation": function(node, obj) {
+                obj.annotation = {};
+                this.readChildNodes(node, obj.annotation);
+            },
+            "appinfo": function(node, obj) {
+                if (!obj.appinfo) {
+                    obj.appinfo = [];
+                }
+                obj.appinfo.push(this.getChildValue(node));
+            },
+            "documentation": function(node, obj) {
+                if (!obj.documentation) {
+                    obj.documentation = [];
+                }
+                var value = this.getChildValue(node);
+                obj.documentation.push({
+                    lang: node.getAttribute("xml:lang"),
+                    textContent: value.replace(this.regExes.trimSpace, "")
+                });
+            },
             "simpleType": function(node, obj) {
                 this.readChildNodes(node, obj);
             },
@@ -187,8 +219,13 @@ OpenLayers.Format.WFSDescribeFeatureType = OpenLayers.Class(
             data = data.documentElement;
         }
         var schema = {};
-        this.readNode(data, schema);
-        
+        if (data.nodeName.split(":").pop() === 'ExceptionReport') {
+            // an exception must have occurred, so parse it
+            var parser = new OpenLayers.Format.OGCExceptionReport();
+            schema.error = parser.read(data);
+        } else {
+            this.readNode(data, schema);
+        }
         return schema;
     },
     
diff --git a/lib/OpenLayers/Format/WFST.js b/lib/OpenLayers/Format/WFST.js
index 1e94fd8..eb3d9d9 100644
--- a/lib/OpenLayers/Format/WFST.js
+++ b/lib/OpenLayers/Format/WFST.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WFST/v1.js b/lib/OpenLayers/Format/WFST/v1.js
index ee9b614..306ba6f 100644
--- a/lib/OpenLayers/Format/WFST/v1.js
+++ b/lib/OpenLayers/Format/WFST/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,6 +6,8 @@
 /**
  * @requires OpenLayers/Format/XML.js
  * @requires OpenLayers/Format/WFST.js
+ * @requires OpenLayers/Filter/Spatial.js
+ * @requires OpenLayers/Filter/FeatureId.js
  */
 
 /**
diff --git a/lib/OpenLayers/Format/WFST/v1_0_0.js b/lib/OpenLayers/Format/WFST/v1_0_0.js
index 5717b29..ed81a2d 100644
--- a/lib/OpenLayers/Format/WFST/v1_0_0.js
+++ b/lib/OpenLayers/Format/WFST/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -82,7 +82,7 @@ OpenLayers.Format.WFST.v1_0_0 = OpenLayers.Class(
         // Not the superclass, only the mixin classes inherit from
         // Format.GML.v2. We need this because we don't want to get readNode
         // from the superclass's superclass, which is OpenLayers.Format.XML.
-        return OpenLayers.Format.GML.v2.prototype.readNode.apply(this, [node, obj]);
+        return OpenLayers.Format.GML.v2.prototype.readNode.apply(this, arguments);
     },
     
     /**
@@ -103,7 +103,7 @@ OpenLayers.Format.WFST.v1_0_0 = OpenLayers.Class(
             "InsertResult": function(node, container) {
                 var obj = {fids: []};
                 this.readChildNodes(node, obj);
-                container.insertIds.push(obj.fids[0]);
+                container.insertIds = container.insertIds.concat(obj.fids);
             },
             "TransactionResult": function(node, obj) {
                 this.readChildNodes(node, obj);
diff --git a/lib/OpenLayers/Format/WFST/v1_1_0.js b/lib/OpenLayers/Format/WFST/v1_1_0.js
index 8185f8d..ff2a88d 100644
--- a/lib/OpenLayers/Format/WFST/v1_1_0.js
+++ b/lib/OpenLayers/Format/WFST/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -81,7 +81,7 @@ OpenLayers.Format.WFST.v1_1_0 = OpenLayers.Class(
         // Not the superclass, only the mixin classes inherit from
         // Format.GML.v3. We need this because we don't want to get readNode
         // from the superclass's superclass, which is OpenLayers.Format.XML.
-        return OpenLayers.Format.GML.v3.prototype.readNode.apply(this, [node, obj]);
+        return OpenLayers.Format.GML.v3.prototype.readNode.apply(this, arguments);
     },
     
     /**
diff --git a/lib/OpenLayers/Format/WKT.js b/lib/OpenLayers/Format/WKT.js
index 33cdd24..a7a7b2e 100644
--- a/lib/OpenLayers/Format/WKT.js
+++ b/lib/OpenLayers/Format/WKT.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,6 +6,12 @@
 /**
  * @requires OpenLayers/Format.js
  * @requires OpenLayers/Feature/Vector.js
+ * @requires OpenLayers/Geometry/Point.js
+ * @requires OpenLayers/Geometry/MultiPoint.js
+ * @requires OpenLayers/Geometry/LineString.js
+ * @requires OpenLayers/Geometry/MultiLineString.js
+ * @requires OpenLayers/Geometry/Polygon.js
+ * @requires OpenLayers/Geometry/MultiPolygon.js
  */
 
 /**
@@ -41,7 +47,7 @@ OpenLayers.Format.WKT = OpenLayers.Class(OpenLayers.Format, {
     },
 
     /**
-     * Method: read
+     * APIMethod: read
      * Deserialize a WKT string and return a vector feature or an
      * array of vector features.  Supports WKT for POINT, MULTIPOINT,
      * LINESTRING, MULTILINESTRING, POLYGON, MULTIPOLYGON, and
@@ -84,7 +90,7 @@ OpenLayers.Format.WKT = OpenLayers.Class(OpenLayers.Format, {
     },
 
     /**
-     * Method: write
+     * APIMethod: write
      * Serialize a feature or array of features into a WKT string.
      *
      * Parameters:
@@ -95,7 +101,7 @@ OpenLayers.Format.WKT = OpenLayers.Class(OpenLayers.Format, {
      * {String} The WKT string representation of the input geometries
      */
     write: function(features) {
-        var collection, geometry, type, data, isCollection;
+        var collection, geometry, isCollection;
         if (features.constructor == Array) {
             collection = features;
             isCollection = true;
diff --git a/lib/OpenLayers/Format/WMC.js b/lib/OpenLayers/Format/WMC.js
index 5b6ea6d..ded1b3a 100644
--- a/lib/OpenLayers/Format/WMC.js
+++ b/lib/OpenLayers/Format/WMC.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMC/v1.js b/lib/OpenLayers/Format/WMC/v1.js
index 503f970..6c9a5c3 100644
--- a/lib/OpenLayers/Format/WMC/v1.js
+++ b/lib/OpenLayers/Format/WMC/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMC/v1_0_0.js b/lib/OpenLayers/Format/WMC/v1_0_0.js
index 003decb..ace0d95 100644
--- a/lib/OpenLayers/Format/WMC/v1_0_0.js
+++ b/lib/OpenLayers/Format/WMC/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMC/v1_1_0.js b/lib/OpenLayers/Format/WMC/v1_1_0.js
index d591c7f..e5efc3e 100644
--- a/lib/OpenLayers/Format/WMC/v1_1_0.js
+++ b/lib/OpenLayers/Format/WMC/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMSCapabilities.js b/lib/OpenLayers/Format/WMSCapabilities.js
index a926fe0..2bf3cef 100644
--- a/lib/OpenLayers/Format/WMSCapabilities.js
+++ b/lib/OpenLayers/Format/WMSCapabilities.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1.js b/lib/OpenLayers/Format/WMSCapabilities/v1.js
index bfa5506..ef5c133 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1_1.js b/lib/OpenLayers/Format/WMSCapabilities/v1_1.js
index 8607c61..0e15d38 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1_1.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1_1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -78,14 +78,18 @@ OpenLayers.Format.WMSCapabilities.v1_1 = OpenLayers.Class(
                 var max = node.getAttribute("max");
                 var rad2 = Math.pow(2, 0.5);
                 var ipm = OpenLayers.INCHES_PER_UNIT["m"];
-                obj.maxScale = parseFloat(
-                    ((min / rad2) * ipm * 
-                        OpenLayers.DOTS_PER_INCH).toPrecision(13)
-                );
-                obj.minScale = parseFloat(
-                    ((max / rad2) * ipm * 
-                        OpenLayers.DOTS_PER_INCH).toPrecision(13)
-                );
+                if (min != 0) {
+                    obj.maxScale = parseFloat(
+                        ((min / rad2) * ipm * 
+                            OpenLayers.DOTS_PER_INCH).toPrecision(13)
+                    );
+                }
+                if (max != Number.POSITIVE_INFINITY) {
+                    obj.minScale = parseFloat(
+                        ((max / rad2) * ipm * 
+                            OpenLayers.DOTS_PER_INCH).toPrecision(13)
+                    );
+                }
             },
             "Dimension": function(node, obj) {
                 var name = node.getAttribute("name").toLowerCase();
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js b/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js
index 94ccd5d..a1c6279 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js b/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js
index 30eee65..459572b 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -10,6 +10,13 @@
 /**
  * Class: OpenLayers.Format.WMSCapabilities/v1_1_1
  * Read WMS Capabilities version 1.1.1.
+ *
+ * Note on <ScaleHint> parsing: If the 'min' attribute is set to "0", no
+ * maxScale will be set on the layer object. If the 'max' attribute is set to
+ * "Infinity", no minScale will be set. This makes it easy to create proper
+ * {<OpenLayers.Layer.WMS>} configurations directly from the layer object
+ * literals returned by this format, because no minScale/maxScale modifications
+ * need to be made.
  * 
  * Inherits from:
  *  - <OpenLayers.Format.WMSCapabilities.v1_1>
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js b/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js
index eff29a1..e58e4f7 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1_3.js b/lib/OpenLayers/Format/WMSCapabilities/v1_3.js
index 3e10064..57aee1a 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1_3.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1_3.js
@@ -1,5 +1,5 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
- * full list of contributors). Published under the 2-clause BSD license.
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
diff --git a/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js b/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js
index 82da245..c2c4ca4 100644
--- a/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js
+++ b/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js
@@ -1,5 +1,5 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
- * full list of contributors). Published under the 2-clause BSD license.
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
diff --git a/lib/OpenLayers/Format/WMSDescribeLayer.js b/lib/OpenLayers/Format/WMSDescribeLayer.js
index b382d3a..296262c 100644
--- a/lib/OpenLayers/Format/WMSDescribeLayer.js
+++ b/lib/OpenLayers/Format/WMSDescribeLayer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -24,28 +24,6 @@ OpenLayers.Format.WMSDescribeLayer = OpenLayers.Class(OpenLayers.Format.XML.Vers
     defaultVersion: "1.1.1",
    
     /**
-     * Method: getVersion
-     * Returns the version to use. Subclasses can override this function
-     * if a different version detection is needed.
-     *
-     * Parameters:
-     * root - {DOMElement}
-     * options - {Object} Optional configuration object.
-     *
-     * Returns:
-     * {String} The version to use.
-     */
-    getVersion: function(root, options) {
-        var version = OpenLayers.Format.XML.VersionedOGC.prototype.getVersion.apply(
-            this, arguments);
-        // these are identical to us, but some WMS use 1.1.1 and some use 1.1.0
-        if (version == "1.1.1" || version == "1.1.0") {
-            version = "1.1";
-        }
-        return version;
-    },
-
-    /**
      * Constructor: OpenLayers.Format.WMSDescribeLayer
      * Create a new parser for WMS DescribeLayer responses.
      *
diff --git a/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js b/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js
index a5f191f..3929d4b 100644
--- a/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js
+++ b/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js
@@ -1,14 +1,15 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
  * @requires OpenLayers/Format/WMSDescribeLayer.js
+ * @requires OpenLayers/Format/OGCExceptionReport.js
  */
 
 /**
- * Class: OpenLayers.Format.WMSDescribeLayer.v1_1
+ * Class: OpenLayers.Format.WMSDescribeLayer.v1_1_1
  * Read SLD WMS DescribeLayer response for WMS 1.1.X
  * WMS 1.1.X is tightly coupled to SLD 1.0.0
  *
@@ -18,7 +19,7 @@
  * Inherits from:
  *  - <OpenLayers.Format.WMSDescribeLayer>
  */
-OpenLayers.Format.WMSDescribeLayer.v1_1 = OpenLayers.Class(
+OpenLayers.Format.WMSDescribeLayer.v1_1_1 = OpenLayers.Class(
     OpenLayers.Format.WMSDescribeLayer, {
     
     /**
@@ -44,10 +45,12 @@ OpenLayers.Format.WMSDescribeLayer.v1_1 = OpenLayers.Class(
      * data - {String} or {DOMElement} data to read/parse.
      *
      * Returns:
-     * {Array} Array of {<LayerDescription>} objects which have:
+     * {Object} Object with a layerDescriptions property, which holds an Array
+     * of {<LayerDescription>} objects which have:
      * - {String} owsType: WFS/WCS
      * - {String} owsURL: the online resource
-     * - {String} typeName: the name of the typename on the service
+     * - {String} typeName: the name of the typename on the owsType service
+     * - {String} layerName: the name of the WMS layer we did a lookup for
      */
     read: function(data) {
         if(typeof data == "string") {
@@ -55,7 +58,7 @@ OpenLayers.Format.WMSDescribeLayer.v1_1 = OpenLayers.Class(
         }
         var root = data.documentElement;
         var children = root.childNodes; 
-        var describelayer = [];
+        var describelayer = {layerDescriptions: []};
         var childNode, nodeName;
         for(var i=0; i<children.length; ++i) { 
             childNode = children[i];
@@ -88,13 +91,32 @@ OpenLayers.Format.WMSDescribeLayer.v1_1 = OpenLayers.Class(
                         typeName = query[0].getAttribute('typename');
                     }
                 }
-                describelayer.push({layerName: layerName, owsType: owsType, 
-                    owsURL: owsURL, typeName: typeName}); 
+                var layerDescription = {
+                    layerName: layerName, owsType: owsType, 
+                    owsURL: owsURL, typeName: typeName
+                };
+                describelayer.layerDescriptions.push(layerDescription);
+                
+                //TODO do this in deprecated.js instead:
+                // array style index for backwards compatibility
+                describelayer.length = describelayer.layerDescriptions.length;
+                describelayer[describelayer.length - 1] = layerDescription; 
+                
+            } else if (nodeName == 'ServiceException') {
+                // an exception must have occurred, so parse it
+                var parser = new OpenLayers.Format.OGCExceptionReport();
+                return {
+                    error: parser.read(data)
+                };
             }
         }
         return describelayer;
     },
     
-    CLASS_NAME: "OpenLayers.Format.WMSDescribeLayer.v1_1" 
+    CLASS_NAME: "OpenLayers.Format.WMSDescribeLayer.v1_1_1"
 
 });
+
+// Version alias - workaround for http://trac.osgeo.org/mapserver/ticket/2257
+OpenLayers.Format.WMSDescribeLayer.v1_1_0 =
+    OpenLayers.Format.WMSDescribeLayer.v1_1_1;
diff --git a/lib/OpenLayers/Format/WMSGetFeatureInfo.js b/lib/OpenLayers/Format/WMSGetFeatureInfo.js
index da08213..57eb219 100644
--- a/lib/OpenLayers/Format/WMSGetFeatureInfo.js
+++ b/lib/OpenLayers/Format/WMSGetFeatureInfo.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WMTSCapabilities.js b/lib/OpenLayers/Format/WMTSCapabilities.js
index 1d2b82c..9cff69c 100644
--- a/lib/OpenLayers/Format/WMTSCapabilities.js
+++ b/lib/OpenLayers/Format/WMTSCapabilities.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,27 +6,27 @@
 /**
  * @requires OpenLayers/Format/XML/VersionedOGC.js
  */
- 
+
 /**
  * Class: OpenLayers.Format.WMTSCapabilities
  * Read WMTS Capabilities.
- * 
+ *
  * Inherits from:
  *  - <OpenLayers.Format.XML.VersionedOGC>
  */
 OpenLayers.Format.WMTSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.VersionedOGC, {
-    
+
     /**
      * APIProperty: defaultVersion
      * {String} Version number to assume if none found.  Default is "1.0.0".
      */
     defaultVersion: "1.0.0",
-    
+
     /**
      * APIProperty: yx
      * {Object} Members in the yx object are used to determine if a CRS URN
      *     corresponds to a CRS with y,x axis order.  Member names are CRS URNs
-     *     and values are boolean.  By default, the following CRS URN are 
+     *     and values are boolean.  By default, the following CRS URN are
      *     assumed to correspond to a CRS with y,x axis order:
      *
      * * urn:ogc:def:crs:EPSG::4326
@@ -48,8 +48,8 @@ OpenLayers.Format.WMTSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.Vers
      * APIMethod: read
      * Read capabilities data from a string, and return information about
      * the service (offering and observedProperty mostly).
-     * 
-     * Parameters: 
+     *
+     * Parameters:
      * data - {String} or {DOMElement} data to read/parse.
      *
      * Returns:
@@ -61,36 +61,36 @@ OpenLayers.Format.WMTSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.Vers
      * Create a WMTS layer given a capabilities object.
      *
      * Parameters:
-     * capabilities - {Object} The object returned from a <read> call to this 
+     * capabilities - {Object} The object returned from a <read> call to this
      *     format.
      * config - {Object} Configuration properties for the layer.  Defaults for
      *     the layer will apply if not provided.
      *
      * Required config properties:
      * layer - {String} The layer identifier.
-     * matrixSet - {String} The matrix set identifier.
+     *
+     * Optional config properties:
+     * matrixSet - {String} The matrix set identifier, required if there is 
+     *      more than one matrix set in the layer capabilities.
+     * style - {String} The name of the style
+     * format - {String} Image format for the layer. Default is the first
+     *     format returned in the GetCapabilities response.
+     * param - {Object} The dimensions values eg: {"Year": "2012"}
      *
      * Returns:
      * {<OpenLayers.Layer.WMTS>} A properly configured WMTS layer.  Throws an
      *     error if an incomplete config is provided.  Returns undefined if no
      *     layer could be created with the provided config.
-     */ 
+     */
     createLayer: function(capabilities, config) {
         var layer;
 
         // confirm required properties are supplied in config
-        var required = {
-            layer: true,
-            matrixSet: true
-        };
-        for (var prop in required) {
-            if (!(prop in config)) {
-                throw new Error("Missing property '" + prop + "' in layer configuration.");
-            }
+        if (!('layer' in config)) {
+            throw new Error("Missing property 'layer' in configuration.");
         }
 
         var contents = capabilities.contents;
-        var matrixSet = contents.tileMatrixSets[config.matrixSet];
 
         // find the layer definition with the given identifier
         var layers = contents.layers;
@@ -101,32 +101,130 @@ OpenLayers.Format.WMTSCapabilities = OpenLayers.Class(OpenLayers.Format.XML.Vers
                 break;
             }
         }
+        if (!layerDef) {
+            throw new Error("Layer not found");
+        }
         
-        if (layerDef && matrixSet) {
-            // get the default style for the layer
-            var style;
-            for (var i=0, ii=layerDef.styles.length; i<ii; ++i) {
-                style = layerDef.styles[i];
-                if (style.isDefault) {
-                    break;
+        var format = config.format;
+        if (!format && layerDef.formats && layerDef.formats.length) {
+            format = layerDef.formats[0];
+        }
+
+        // find the matrixSet definition
+        var matrixSet;
+        if (config.matrixSet) {
+            matrixSet = contents.tileMatrixSets[config.matrixSet];
+        } else if (layerDef.tileMatrixSetLinks.length >= 1) {
+            matrixSet = contents.tileMatrixSets[
+                layerDef.tileMatrixSetLinks[0].tileMatrixSet];
+        }
+        if (!matrixSet) {
+            throw new Error("matrixSet not found");
+        }
+
+        // get the default style for the layer
+        var style;
+        for (var i=0, ii=layerDef.styles.length; i<ii; ++i) {
+            style = layerDef.styles[i];
+            if (style.isDefault) {
+                break;
+            }
+        }
+
+        var requestEncoding = config.requestEncoding;
+        if (!requestEncoding) {
+            requestEncoding = "KVP";
+            if (capabilities.operationsMetadata.GetTile.dcp.http) {
+                var http = capabilities.operationsMetadata.GetTile.dcp.http;
+                // Get first get method
+                if (http.get[0].constraints) {
+                    var constraints = http.get[0].constraints;
+                    var allowedValues = constraints.GetEncoding.allowedValues;
+
+                    // The OGC documentation is not clear if we should use
+                    // REST or RESTful, ArcGis use RESTful,
+                    // and OpenLayers use REST.
+                    if (!allowedValues.KVP &&
+                            (allowedValues.REST || allowedValues.RESTful)) {
+                        requestEncoding = "REST";
+                    }
                 }
             }
-            
-            layer = new OpenLayers.Layer.WMTS(
-                OpenLayers.Util.applyDefaults(config, {
-                    url: config.requestEncoding === "REST" && layerDef.resourceUrl ?
-                        layerDef.resourceUrl.tile.template :
-                        capabilities.operationsMetadata.GetTile.dcp.http.get[0].url,
-                    name: layerDef.title,
-                    style: style.identifier,
-                    matrixIds: matrixSet.matrixIds,
-                    tileFullExtent: matrixSet.bounds
-                })
-            );
         }
-        return layer;
+
+        var dimensions = [];
+        var params = config.params || {};
+        // to don't overwrite the changes in the applyDefaults
+        delete config.params;
+        for (var id = 0, ld = layerDef.dimensions.length ; id < ld ; id++) {
+            var dimension = layerDef.dimensions[id];
+            dimensions.push(dimension.identifier);
+            if (!params.hasOwnProperty(dimension.identifier)) {
+                params[dimension.identifier] = dimension['default'];
+            }
+        }
+
+        var projection = config.projection || matrixSet.supportedCRS.replace(
+                /urn:ogc:def:crs:(\w+):(.*:)?(\w+)$/, "$1:$3");
+        var units = config.units ||
+                (projection === "EPSG:4326" ? "degrees" : "m");
+
+        var resolutions = [];
+        for (var mid in matrixSet.matrixIds) {
+            if (matrixSet.matrixIds.hasOwnProperty(mid)) {
+                resolutions.push(
+                    matrixSet.matrixIds[mid].scaleDenominator * 0.28E-3 /
+                        OpenLayers.METERS_PER_INCH /
+                        OpenLayers.INCHES_PER_UNIT[units]);
+            }
+        }
+
+        var url;
+        if (requestEncoding === "REST" && layerDef.resourceUrls) {
+            url = [];
+            var resourceUrls = layerDef.resourceUrls,
+                resourceUrl;
+            for (var t = 0, tt = layerDef.resourceUrls.length; t < tt; ++t) {
+                resourceUrl = layerDef.resourceUrls[t];
+                if (resourceUrl.format === format && resourceUrl.resourceType === "tile") {
+                    url.push(resourceUrl.template);
+                }
+            }
+        }
+        else {
+            var httpGet = capabilities.operationsMetadata.GetTile.dcp.http.get;
+            url = [];
+            var constraint;
+            for (var i = 0, ii = httpGet.length; i < ii; i++) {
+                constraint = httpGet[i].constraints;
+                if (!constraint || (constraint && constraint.
+                        GetEncoding.allowedValues[requestEncoding])) {
+                    url.push(httpGet[i].url);
+                }
+            }
+        }
+        
+        return new OpenLayers.Layer.WMTS(
+            OpenLayers.Util.applyDefaults(config, {
+                url: url,
+                requestEncoding: requestEncoding,
+                name: layerDef.title,
+                style: style.identifier,
+                format: format,
+                matrixIds: matrixSet.matrixIds,
+                matrixSet: matrixSet.identifier,
+                projection: projection,
+                units: units,
+                resolutions: config.isBaseLayer === false ? undefined :
+                    resolutions,
+                serverResolutions: resolutions,
+                tileFullExtent: matrixSet.bounds,
+                dimensions: dimensions,
+                params: params
+            })
+        );
     },
-    
-    CLASS_NAME: "OpenLayers.Format.WMTSCapabilities" 
+
+    CLASS_NAME: "OpenLayers.Format.WMTSCapabilities"
 
 });
diff --git a/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js b/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js
index d65409e..fda2584 100644
--- a/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js
+++ b/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -195,10 +195,16 @@ OpenLayers.Format.WMTSCapabilities.v1_0_0 = OpenLayers.Class(
             },
             "ResourceURL": function(node, obj) {
                 obj.resourceUrl = obj.resourceUrl || {};
-                obj.resourceUrl[node.getAttribute("resourceType")] = {
+                var resourceType = node.getAttribute("resourceType");
+                if (!obj.resourceUrls) {
+                    obj.resourceUrls = [];
+                }
+                var resourceUrl = obj.resourceUrl[resourceType] = {
                     format: node.getAttribute("format"),
-                    template: node.getAttribute("template")
+                    template: node.getAttribute("template"),
+                    resourceType: resourceType
                 };
+                obj.resourceUrls.push(resourceUrl);
             },
             // not used for now, can be added in the future though
             /*"Themes": function(node, obj) {
diff --git a/lib/OpenLayers/Format/WPSCapabilities.js b/lib/OpenLayers/Format/WPSCapabilities.js
index 70fae1b..f0d74db 100644
--- a/lib/OpenLayers/Format/WPSCapabilities.js
+++ b/lib/OpenLayers/Format/WPSCapabilities.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js b/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js
index db93f27..e6762a9 100644
--- a/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js
+++ b/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/WPSDescribeProcess.js b/lib/OpenLayers/Format/WPSDescribeProcess.js
index 9534a24..e8f96bb 100644
--- a/lib/OpenLayers/Format/WPSDescribeProcess.js
+++ b/lib/OpenLayers/Format/WPSDescribeProcess.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -127,6 +127,10 @@ OpenLayers.Format.WPSDescribeProcess = OpenLayers.Class(
                 output.complexOutput = {};
                 this.readChildNodes(node, output.complexOutput);
             },
+            "LiteralOutput": function(node, output) {
+                output.literalOutput = {};
+                this.readChildNodes(node, output.literalOutput);
+            },
             "Input": function(node, dataInputs) {
                 var input = {
                     maxOccurs: parseInt(node.getAttribute("maxOccurs")),
diff --git a/lib/OpenLayers/Format/WPSExecute.js b/lib/OpenLayers/Format/WPSExecute.js
index c537950..0795b0d 100644
--- a/lib/OpenLayers/Format/WPSExecute.js
+++ b/lib/OpenLayers/Format/WPSExecute.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -16,7 +16,8 @@
  * Inherits from:
  *  - <OpenLayers.Format.XML>
  */
-OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
+OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML,
+                                            OpenLayers.Format.Filter.v1_1_0, {
     
     /**
      * Property: namespaces
@@ -94,6 +95,28 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
     }, 
 
     /**
+     * APIMethod: read
+     * Parse a WPS Execute and return an object with its information.
+     * 
+     * Parameters: 
+     * data - {String} or {DOMElement} data to read/parse.
+     *
+     * Returns:
+     * {Object}
+     */
+    read: function(data) {
+        if(typeof data == "string") {
+            data = OpenLayers.Format.XML.prototype.read.apply(this, [data]);
+        }
+        if(data && data.nodeType == 9) {
+            data = data.documentElement;
+        }
+        var info = {};
+        this.readNode(data, info);
+        return info;
+    },
+
+    /**
      * Property: writers
      * As a compliment to the readers property, this structure contains public
      *     writing functions grouped by namespace alias and named like the
@@ -131,15 +154,20 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
                         status: responseDocument.status
                     }
                 });
-                if (responseDocument.output) {
-                    this.writeNode("wps:Output", responseDocument.output, node);
+                if (responseDocument.outputs) {
+                    for (var i = 0, len = responseDocument.outputs.length; i < len; i++) {
+                        this.writeNode("wps:Output", responseDocument.outputs[i], node);
+                    }
                 }
                 return node;
             },
             "Output": function(output) {
                 var node = this.createElementNSPlus("wps:Output", {
                     attributes: {
-                        asReference: output.asReference
+                        asReference: output.asReference,
+                        mimeType: output.mimeType,
+                        encoding: output.encoding,
+                        schema: output.schema
                     }
                 });
                 this.writeNode("ows:Identifier", output.identifier, node);
@@ -150,7 +178,9 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
             "RawDataOutput": function(rawDataOutput) {
                 var node = this.createElementNSPlus("wps:RawDataOutput", {
                     attributes: {
-                        mimeType: rawDataOutput.mimeType
+                        mimeType: rawDataOutput.mimeType,
+                        encoding: rawDataOutput.encoding,
+                        schema: rawDataOutput.schema
                     }
                 });
                 this.writeNode("ows:Identifier", rawDataOutput.identifier, node);
@@ -175,6 +205,9 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
                 if (input.reference) {
                     this.writeNode("wps:Reference", input.reference, node);
                 }
+                if (input.boundingBoxData) {
+                    this.writeNode("wps:BoundingBoxData", input.boundingBoxData, node);
+                }
                 return node;
             },
             "Data": function(data) {
@@ -183,6 +216,8 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
                     this.writeNode("wps:LiteralData", data.literalData, node);
                 } else if (data.complexData) {
                     this.writeNode("wps:ComplexData", data.complexData, node);
+                } else if (data.boundingBoxData) {
+                    this.writeNode("ows:BoundingBox", data.boundingBoxData, node);
                 }
                 return node;
             },
@@ -228,6 +263,9 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
                 }
                 return node;
             },
+            "BoundingBoxData": function(node, obj) {
+                this.writers['ows']['BoundingBox'].apply(this, [node, obj, "wps:BoundingBoxData"]);
+            },
             "Body": function(body) {
                 var node = this.createElementNSPlus("wps:Body", {});
                 if (body.wcs) {
@@ -250,6 +288,107 @@ OpenLayers.Format.WPSExecute = OpenLayers.Class(OpenLayers.Format.XML, {
         "ogc": OpenLayers.Format.Filter.v1_1_0.prototype.writers.ogc,
         "ows": OpenLayers.Format.OWSCommon.v1_1_0.prototype.writers.ows
     },
+
+    /**
+     * Property: readers
+     * Contains public functions, grouped by namespace prefix, that will
+     *     be applied when a namespaced node is found matching the function
+     *     name.  The function will be applied in the scope of this parser
+     *     with two arguments: the node being read and a context object passed
+     *     from the parent.
+     */
+    readers: {
+        "wps": {
+            "ExecuteResponse": function(node, obj) {
+                obj.executeResponse = {
+                    lang: node.getAttribute("lang"),
+                    statusLocation: node.getAttribute("statusLocation"),
+                    serviceInstance: node.getAttribute("serviceInstance"),
+                    service: node.getAttribute("service")
+                };
+                this.readChildNodes(node, obj.executeResponse);
+            },
+            "Process":function(node,obj) {
+                obj.process = {};
+                this.readChildNodes(node, obj.process);
+            },
+            "Status":function(node,obj) {
+                obj.status = {
+                    creationTime: node.getAttribute("creationTime")
+                };
+                this.readChildNodes(node, obj.status);
+            },
+            "ProcessSucceeded": function(node,obj) {
+                obj.processSucceeded = true;
+            },
+            "ProcessOutputs": function(node, processDescription) {
+                processDescription.processOutputs = [];
+                this.readChildNodes(node, processDescription.processOutputs);
+            },
+            "Output": function(node, processOutputs) {
+                var output = {};
+                this.readChildNodes(node, output);
+                processOutputs.push(output);
+            },
+            "Reference": function(node, output) {
+                output.reference = {
+                    href: node.getAttribute("href"),
+                    mimeType: node.getAttribute("mimeType"),
+                    encoding: node.getAttribute("encoding"),
+                    schema: node.getAttribute("schema")
+                };
+            },
+            "Data": function(node, output) {
+                output.data = {};
+                this.readChildNodes(node, output);
+            },
+            "LiteralData": function(node, output) {
+                output.literalData = {
+                    dataType: node.getAttribute("dataType"),
+                    uom: node.getAttribute("uom"),
+                    value: this.getChildValue(node)
+                };
+            },
+            "ComplexData": function(node, output) {
+                output.complexData = {
+                    mimeType: node.getAttribute("mimeType"),
+                    schema: node.getAttribute("schema"),
+                    encoding: node.getAttribute("encoding"),
+                    value: ""
+                };
+                
+                // try to get *some* value, ignore the empty text values
+                if (this.isSimpleContent(node)) {
+                    var child;
+                    for(child=node.firstChild; child; child=child.nextSibling) {
+                        switch(child.nodeType) {
+                            case 3: // text node
+                            case 4: // cdata section
+                                output.complexData.value += child.nodeValue;
+                        }
+                    }
+                }
+                else {
+                    for(child=node.firstChild; child; child=child.nextSibling) {
+                        if (child.nodeType == 1) {
+                            output.complexData.value = child;
+                        }
+                    }
+                }
+
+            },
+            "BoundingBox": function(node, output) {
+                output.boundingBoxData = {
+                    dimensions: node.getAttribute("dimensions"),
+                    crs: node.getAttribute("crs")
+                };
+                this.readChildNodes(node, output.boundingBoxData);
+            }
+        },
+
+        // TODO: we should add Exception parsing here
+        "ows": OpenLayers.Format.OWSCommon.v1_1_0.prototype.readers["ows"]
+    },
     
     CLASS_NAME: "OpenLayers.Format.WPSExecute" 
 
diff --git a/lib/OpenLayers/Format/XLS.js b/lib/OpenLayers/Format/XLS.js
index 118b26d..76f3f10 100644
--- a/lib/OpenLayers/Format/XLS.js
+++ b/lib/OpenLayers/Format/XLS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -9,7 +9,7 @@
 
 /**
  * Class: OpenLayers.Format.XLS
- * Read/Wite XLS (OpenLS). Create a new instance with the <OpenLayers.Format.XLS>
+ * Read/Write XLS (OpenLS). Create a new instance with the <OpenLayers.Format.XLS>
  *     constructor. Currently only implemented for Location Utility Services, more
  *     specifically only for Geocoding. No support for Reverse Geocoding as yet.
  * 
diff --git a/lib/OpenLayers/Format/XLS/v1.js b/lib/OpenLayers/Format/XLS/v1.js
index f101b65..642474f 100644
--- a/lib/OpenLayers/Format/XLS/v1.js
+++ b/lib/OpenLayers/Format/XLS/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/XLS/v1_1_0.js b/lib/OpenLayers/Format/XLS/v1_1_0.js
index 29550af..7ffca26 100644
--- a/lib/OpenLayers/Format/XLS/v1_1_0.js
+++ b/lib/OpenLayers/Format/XLS/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Format/XML.js b/lib/OpenLayers/Format/XML.js
index c2969f1..56f5871 100644
--- a/lib/OpenLayers/Format/XML.js
+++ b/lib/OpenLayers/Format/XML.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -231,6 +231,26 @@ OpenLayers.Format.XML = OpenLayers.Class(OpenLayers.Format, {
     },
 
     /**
+     * APIMethod: createDocumentFragment
+     * Create a document fragment node that can be appended to another node
+     *     created by createElementNS.  This will call 
+     *     document.createDocumentFragment outside of IE.  In IE, the ActiveX
+     *     object's createDocumentFragment method is used.
+     *
+     * Returns:
+     * {Element} A document fragment.
+     */
+    createDocumentFragment: function() {
+        var element;
+        if (this.xmldom) {
+            element = this.xmldom.createDocumentFragment();
+        } else {
+            element = document.createDocumentFragment();
+        }
+        return element;
+    },
+
+    /**
      * APIMethod: createTextNode
      * Create a text node.  This node can be appended to another node with
      *     the standard node.appendChild method.  For cross-browser support,
diff --git a/lib/OpenLayers/Format/XML/VersionedOGC.js b/lib/OpenLayers/Format/XML/VersionedOGC.js
index 7b9ef90..e68d968 100644
--- a/lib/OpenLayers/Format/XML/VersionedOGC.js
+++ b/lib/OpenLayers/Format/XML/VersionedOGC.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -12,6 +12,17 @@
  * Class: OpenLayers.Format.XML.VersionedOGC
  * Base class for versioned formats, i.e. a format which supports multiple
  * versions.
+ *
+ * To enable checking if parsing succeeded, you will need to define a property
+ * called errorProperty on the parser you want to check. The parser will then
+ * check the returned object to see if that property is present. If it is, it
+ * assumes the parsing was successful. If it is not present (or is null), it will
+ * pass the document through an OGCExceptionReport parser.
+ * 
+ * If errorProperty is undefined for the parser, this error checking mechanism
+ * will be disabled.
+ *
+ *
  * 
  * Inherits from:
  *  - <OpenLayers.Format.XML>
@@ -37,13 +48,13 @@ OpenLayers.Format.XML.VersionedOGC = OpenLayers.Class(OpenLayers.Format.XML, {
     profile: null,
 
     /**
-     * APIProperty: errorProperty
-     * {String} Which property of the returned object to check for in order to
-     * determine whether or not parsing has failed. In the case that the
-     * errorProperty is undefined on the returned object, the document will be
-     * run through an OGCExceptionReport parser.
+     * APIProperty: allowFallback
+     * {Boolean} If a profiled parser cannot be found for the returned version,
+     * use a non-profiled parser as the fallback. Application code using this
+     * should take into account that the return object structure might be
+     * missing the specifics of the profile. Defaults to false.
      */
-    errorProperty: null,
+    allowFallback: false,
 
     /**
      * Property: name
@@ -128,8 +139,17 @@ OpenLayers.Format.XML.VersionedOGC = OpenLayers.Class(OpenLayers.Format.XML, {
                 "v" + version.replace(/\./g, "_") + profile
             ];
             if(!format) {
-                throw "Can't find a " + this.name + " parser for version " +
-                      version + profile;
+                if (profile !== "" && this.allowFallback) {
+                    // fallback to the non-profiled version of the parser
+                    profile = "";
+                    format = OpenLayers.Format[this.name][
+                        "v" + version.replace(/\./g, "_")
+                    ];
+                }
+                if (!format) {
+                    throw "Can't find a " + this.name + " parser for version " +
+                          version + profile;
+                }
             }
             this.parser = new format(this.options);
         }
@@ -175,9 +195,11 @@ OpenLayers.Format.XML.VersionedOGC = OpenLayers.Class(OpenLayers.Format.XML, {
         }
         var root = data.documentElement;
         var version = this.getVersion(root);
-        this.parser = this.getParser(version);
-        var obj = this.parser.read(data, options);
-        if (this.errorProperty !== null && obj[this.errorProperty] === undefined) {
+        this.parser = this.getParser(version);          // Select the parser
+        var obj = this.parser.read(data, options);      // Parse the data
+
+        var errorProperty = this.parser.errorProperty || null;
+        if (errorProperty !== null && obj[errorProperty] === undefined) {
             // an error must have happened, so parse it and report back
             var format = new OpenLayers.Format.OGCExceptionReport();
             obj.error = format.read(data);
diff --git a/lib/OpenLayers/Geometry.js b/lib/OpenLayers/Geometry.js
index bbce8b3..e7b8e59 100644
--- a/lib/OpenLayers/Geometry.js
+++ b/lib/OpenLayers/Geometry.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -438,12 +438,39 @@ OpenLayers.Geometry.segmentsIntersect = function(seg1, seg2, options) {
  *     representing endpoint coordinates.
  *
  * Returns:
- * {Object} An object with distance, x, and y properties.  The distance
+ * {Object} An object with distance, along, x, and y properties.  The distance
  *     will be the shortest distance between the input point and segment.
  *     The x and y properties represent the coordinates along the segment
- *     where the shortest distance meets the segment.
+ *     where the shortest distance meets the segment. The along attribute
+ *     describes how far between the two segment points the given point is.
  */
 OpenLayers.Geometry.distanceToSegment = function(point, segment) {
+    var result = OpenLayers.Geometry.distanceSquaredToSegment(point, segment);
+    result.distance = Math.sqrt(result.distance);
+    return result;
+};
+
+/**
+ * Function: OpenLayers.Geometry.distanceSquaredToSegment
+ *
+ * Usually the distanceToSegment function should be used. This variant however
+ * can be used for comparisons where the exact distance is not important.
+ *
+ * Parameters:
+ * point - {Object} An object with x and y properties representing the
+ *     point coordinates.
+ * segment - {Object} An object with x1, y1, x2, and y2 properties
+ *     representing endpoint coordinates.
+ *
+ * Returns:
+ * {Object} An object with squared distance, along, x, and y properties.
+ *     The distance will be the shortest distance between the input point and
+ *     segment. The x and y properties represent the coordinates along the
+ *     segment where the shortest distance meets the segment. The along
+ *     attribute describes how far between the two segment points the given
+ *     point is.
+ */
+OpenLayers.Geometry.distanceSquaredToSegment = function(point, segment) {
     var x0 = point.x;
     var y0 = point.y;
     var x1 = segment.x1;
@@ -466,7 +493,8 @@ OpenLayers.Geometry.distanceToSegment = function(point, segment) {
         y = y1 + along * dy;
     }
     return {
-        distance: Math.sqrt(Math.pow(x - x0, 2) + Math.pow(y - y0, 2)),
-        x: x, y: y
+        distance: Math.pow(x - x0, 2) + Math.pow(y - y0, 2),
+        x: x, y: y,
+        along: along
     };
 };
diff --git a/lib/OpenLayers/Geometry/Collection.js b/lib/OpenLayers/Geometry/Collection.js
index f6389f3..f76cc85 100644
--- a/lib/OpenLayers/Geometry/Collection.js
+++ b/lib/OpenLayers/Geometry/Collection.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/Curve.js b/lib/OpenLayers/Geometry/Curve.js
index 16a3c47..e663e0b 100644
--- a/lib/OpenLayers/Geometry/Curve.js
+++ b/lib/OpenLayers/Geometry/Curve.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/LineString.js b/lib/OpenLayers/Geometry/LineString.js
index 1d5a0fc..b7d7dac 100644
--- a/lib/OpenLayers/Geometry/LineString.js
+++ b/lib/OpenLayers/Geometry/LineString.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/LinearRing.js b/lib/OpenLayers/Geometry/LinearRing.js
index f16347d..b0a694c 100644
--- a/lib/OpenLayers/Geometry/LinearRing.js
+++ b/lib/OpenLayers/Geometry/LinearRing.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -191,21 +191,37 @@ OpenLayers.Geometry.LinearRing = OpenLayers.Class(
      * {<OpenLayers.Geometry.Point>} The centroid of the collection
      */
     getCentroid: function() {
-        if (this.components && (this.components.length > 2)) {
-            var sumX = 0.0;
-            var sumY = 0.0;
-            for (var i = 0; i < this.components.length - 1; i++) {
-                var b = this.components[i];
-                var c = this.components[i+1];
-                sumX += (b.x + c.x) * (b.x * c.y - c.x * b.y);
-                sumY += (b.y + c.y) * (b.x * c.y - c.x * b.y);
+        if (this.components) {
+            var len = this.components.length;
+            if (len > 0 && len <= 2) {
+                return this.components[0].clone();
+            } else if (len > 2) {
+                var sumX = 0.0;
+                var sumY = 0.0;
+                var x0 = this.components[0].x;
+                var y0 = this.components[0].y;
+                var area = -1 * this.getArea();
+                if (area != 0) {
+                    for (var i = 0; i < len - 1; i++) {
+                        var b = this.components[i];
+                        var c = this.components[i+1];
+                        sumX += (b.x + c.x - 2 * x0) * ((b.x - x0) * (c.y - y0) - (c.x - x0) * (b.y - y0));
+                        sumY += (b.y + c.y - 2 * y0) * ((b.x - x0) * (c.y - y0) - (c.x - x0) * (b.y - y0));
+                    }
+                    var x = x0 + sumX / (6 * area);
+                    var y = y0 + sumY / (6 * area);
+                } else {
+                    for (var i = 0; i < len - 1; i++) {
+                        sumX += this.components[i].x;
+                        sumY += this.components[i].y;
+                    }
+                    var x = sumX / (len - 1);
+                    var y = sumY / (len - 1);
+                }
+                return new OpenLayers.Geometry.Point(x, y);
+            } else {
+                return null;
             }
-            var area = -1 * this.getArea();
-            var x = sumX / (6 * area);
-            var y = sumY / (6 * area);
-            return new OpenLayers.Geometry.Point(x, y);
-        } else {
-            return null;
         }
     },
 
diff --git a/lib/OpenLayers/Geometry/MultiLineString.js b/lib/OpenLayers/Geometry/MultiLineString.js
index 6629977..4e330b0 100644
--- a/lib/OpenLayers/Geometry/MultiLineString.js
+++ b/lib/OpenLayers/Geometry/MultiLineString.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/MultiPoint.js b/lib/OpenLayers/Geometry/MultiPoint.js
index 390ba30..ed8ff67 100644
--- a/lib/OpenLayers/Geometry/MultiPoint.js
+++ b/lib/OpenLayers/Geometry/MultiPoint.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/MultiPolygon.js b/lib/OpenLayers/Geometry/MultiPolygon.js
index 4607126..d1e59dc 100644
--- a/lib/OpenLayers/Geometry/MultiPolygon.js
+++ b/lib/OpenLayers/Geometry/MultiPolygon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/Point.js b/lib/OpenLayers/Geometry/Point.js
index b629b8d..456956f 100644
--- a/lib/OpenLayers/Geometry/Point.js
+++ b/lib/OpenLayers/Geometry/Point.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Geometry/Polygon.js b/lib/OpenLayers/Geometry/Polygon.js
index adc8318..6aaff1f 100644
--- a/lib/OpenLayers/Geometry/Polygon.js
+++ b/lib/OpenLayers/Geometry/Polygon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Handler.js b/lib/OpenLayers/Handler.js
index ae4c3c0..0fef88e 100644
--- a/lib/OpenLayers/Handler.js
+++ b/lib/OpenLayers/Handler.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -85,6 +85,14 @@ OpenLayers.Handler = OpenLayers.Class({
      *     the OpenLayers code.
      */
     evt: null,
+    
+    /**
+     * Property: touch
+     * {Boolean} Indicates the support of touch events. When touch events are 
+     *     started touch will be true and all mouse related listeners will do 
+     *     nothing.
+     */
+    touch: false,
 
     /**
      * Constructor: OpenLayers.Handler
@@ -139,7 +147,8 @@ OpenLayers.Handler = OpenLayers.Class({
         var keyModifiers =
             (evt.shiftKey ? OpenLayers.Handler.MOD_SHIFT : 0) |
             (evt.ctrlKey  ? OpenLayers.Handler.MOD_CTRL  : 0) |
-            (evt.altKey   ? OpenLayers.Handler.MOD_ALT   : 0);
+            (evt.altKey   ? OpenLayers.Handler.MOD_ALT   : 0) |
+            (evt.metaKey  ? OpenLayers.Handler.MOD_META  : 0);
     
         /* if it differs from the handler object's key mask,
            bail out of the event handler */
@@ -186,11 +195,33 @@ OpenLayers.Handler = OpenLayers.Class({
                 this.unregister(events[i], this[events[i]]); 
             }
         } 
+        this.touch = false;
         this.active = false;
         return true;
     },
 
     /**
+     * Method: startTouch
+     * Start touch events, this method must be called by subclasses in 
+     *     "touchstart" method. When touch events are started <touch> will be
+     *     true and all mouse related listeners will do nothing.
+     */
+    startTouch: function() {
+        if (!this.touch) {
+            this.touch = true;
+            var events = [
+                "mousedown", "mouseup", "mousemove", "click", "dblclick",
+                "mouseout"
+            ];
+            for (var i=0, len=events.length; i<len; i++) {
+                if (this[events[i]]) {
+                    this.unregister(events[i], this[events[i]]); 
+                }
+            } 
+        }
+    },
+
+    /**
     * Method: callback
     * Trigger the control's named callback with the given arguments
     *
@@ -232,12 +263,12 @@ OpenLayers.Handler = OpenLayers.Class({
      *     to get more information about the event that the handler is
      *     processing.
      *
-     * This allows modifier keys on the event to be checked (alt, shift,
-     *     and ctrl cannot be checked with the keyboard handler).  For a
+     * This allows modifier keys on the event to be checked (alt, shift, ctrl,
+     *     and meta cannot be checked with the keyboard handler).  For a
      *     control to determine which modifier keys are associated with the
      *     event that a handler is currently processing, it should access
      *     (code)handler.evt.altKey || handler.evt.shiftKey ||
-     *     handler.evt.ctrlKey(end).
+     *     handler.evt.ctrlKey || handler.evt.metaKey(end).
      *
      * Parameters:
      * evt - {Event} The browser event.
@@ -285,4 +316,10 @@ OpenLayers.Handler.MOD_CTRL  = 2;
  */
 OpenLayers.Handler.MOD_ALT   = 4;
 
+/**
+ * Constant: OpenLayers.Handler.MOD_META
+ * If set as the <keyMask>, <checkModifiers> returns false if Cmd is down.
+ */
+OpenLayers.Handler.MOD_META  = 8;
+
 
diff --git a/lib/OpenLayers/Handler/Box.js b/lib/OpenLayers/Handler/Box.js
index 8ff47c4..9d3289a 100644
--- a/lib/OpenLayers/Handler/Box.js
+++ b/lib/OpenLayers/Handler/Box.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Handler/Click.js b/lib/OpenLayers/Handler/Click.js
index 37d15c6..94a8444 100644
--- a/lib/OpenLayers/Handler/Click.js
+++ b/lib/OpenLayers/Handler/Click.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -90,13 +90,6 @@ OpenLayers.Handler.Click = OpenLayers.Class(OpenLayers.Handler, {
      * {Number} The id of the timeout waiting to clear the <delayedCall>.
      */
     timerId: null,
-
-    /**
-     * Property: touch
-     * {Boolean} When a touchstart event is fired, touch will be true and all
-     *     mouse related listeners will do nothing.
-     */
-    touch: false,
     
     /**
      * Property: down
@@ -155,10 +148,7 @@ OpenLayers.Handler.Click = OpenLayers.Class(OpenLayers.Handler, {
      * {Boolean} Continue propagating this event.
      */
     touchstart: function(evt) {
-        if (!this.touch) {
-            this.unregisterMouseListeners();
-            this.touch = true;
-        }
+        this.startTouch();
         this.down = this.getEventInfo(evt);
         this.last = this.getEventInfo(evt);
         return true;
@@ -195,20 +185,6 @@ OpenLayers.Handler.Click = OpenLayers.Class(OpenLayers.Handler, {
         }
         return true;
     },
-    
-    /**
-     * Method: unregisterMouseListeners
-     * In a touch environment, we don't want to handle mouse events.
-     */
-    unregisterMouseListeners: function() {
-        this.map.events.un({
-            mousedown: this.mousedown,
-            mouseup: this.mouseup,
-            click: this.click,
-            dblclick: this.dblclick,
-            scope: this
-        });
-    },
 
     /**
      * Method: mousedown
@@ -352,7 +328,7 @@ OpenLayers.Handler.Click = OpenLayers.Class(OpenLayers.Handler, {
                     // touch device, no dblclick event - this may be a double
                     if (this["double"]) {
                         // on Android don't let the browser zoom on the page
-                        OpenLayers.Event.stop(evt);
+                        OpenLayers.Event.preventDefault(evt);
                     }
                     this.handleDouble(evt);
                 }
@@ -495,8 +471,8 @@ OpenLayers.Handler.Click = OpenLayers.Class(OpenLayers.Handler, {
             for (var i=0; i<len; i++) {
                 touch = evt.touches[i];
                 touches[i] = {
-                    clientX: touch.clientX,
-                    clientY: touch.clientY
+                    clientX: touch.olClientX,
+                    clientY: touch.olClientY
                 };
             }
         }
@@ -520,7 +496,6 @@ OpenLayers.Handler.Click = OpenLayers.Class(OpenLayers.Handler, {
             this.down = null;
             this.first = null;
             this.last = null;
-            this.touch = false;
             deactivated = true;
         }
         return deactivated;
diff --git a/lib/OpenLayers/Handler/Drag.js b/lib/OpenLayers/Handler/Drag.js
index 59456a8..8c3cb55 100644
--- a/lib/OpenLayers/Handler/Drag.js
+++ b/lib/OpenLayers/Handler/Drag.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -50,13 +50,6 @@ OpenLayers.Handler.Drag = OpenLayers.Class(OpenLayers.Handler, {
      */
     dragging: false,
 
-    /**
-     * Property: touch
-     * {Boolean} When a touchstart event is fired, touch will be true and all
-     *     mouse related listeners will do nothing.
-     */
-    touch: false,
-
     /** 
      * Property: last
      * {<OpenLayers.Pixel>} The last pixel location of the drag.
@@ -172,7 +165,8 @@ OpenLayers.Handler.Drag = OpenLayers.Class(OpenLayers.Handler, {
             this.down(evt);
             this.callback("down", [evt.xy]);
 
-            OpenLayers.Event.stop(evt);
+            // prevent document dragging
+            OpenLayers.Event.preventDefault(evt);
 
             if(!this.oldOnselectstart) {
                 this.oldOnselectstart = document.onselectstart ?
@@ -344,17 +338,7 @@ OpenLayers.Handler.Drag = OpenLayers.Class(OpenLayers.Handler, {
      * {Boolean} Let the event propagate.
      */
     touchstart: function(evt) {
-        if (!this.touch) {
-            this.touch = true;
-            // unregister mouse listeners
-            this.map.events.un({
-                mousedown: this.mousedown,
-                mouseup: this.mouseup,
-                mousemove: this.mousemove,
-                click: this.click,
-                scope: this
-            });
-        }
+        this.startTouch();
         return this.dragstart(evt);
     },
 
@@ -508,7 +492,6 @@ OpenLayers.Handler.Drag = OpenLayers.Class(OpenLayers.Handler, {
     deactivate: function() {
         var deactivated = false;
         if(OpenLayers.Handler.prototype.deactivate.apply(this, arguments)) {
-            this.touch = false;
             this.started = false;
             this.dragging = false;
             this.start = null;
diff --git a/lib/OpenLayers/Handler/Feature.js b/lib/OpenLayers/Handler/Feature.js
index 63d64b1..39b86f2 100644
--- a/lib/OpenLayers/Handler/Feature.js
+++ b/lib/OpenLayers/Handler/Feature.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -59,13 +59,6 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
      * {<OpenLayers.Pixel>} The location of the last mouseup.
      */
     up: null,
-
-    /**
-     * Property: touch
-     * {Boolean} When a touchstart event is fired, touch will be true and all
-     *     mouse related listeners will do nothing.
-     */
-    touch: false,
     
     /**
      * Property: clickTolerance
@@ -139,17 +132,7 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
      * {Boolean} Let the event propagate.
      */
     touchstart: function(evt) {
-        if(!this.touch) {
-            this.touch =  true;
-            this.map.events.un({
-                mousedown: this.mousedown,
-                mouseup: this.mouseup,
-                mousemove: this.mousemove,
-                click: this.click,
-                dblclick: this.dblclick,
-                scope: this
-            });
-        }
+        this.startTouch(); 
         return OpenLayers.Event.isMultiTouch(evt) ?
                 true : this.mousedown(evt);
     },
@@ -164,7 +147,7 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
      * evt - {Event}
      */
     touchmove: function(evt) {
-        OpenLayers.Event.stop(evt);
+        OpenLayers.Event.preventDefault(evt);
     },
 
     /**
@@ -295,7 +278,7 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
             if(type === "touchstart") {
                 // stop the event to prevent Android Webkit from
                 // "flashing" the map div
-                OpenLayers.Event.stop(evt);
+                OpenLayers.Event.preventDefault(evt);
             }
             var inNew = (this.feature != this.lastFeature);
             if(this.geometryTypeMatches(this.feature)) {
@@ -325,10 +308,8 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
                 // we enter handle. Yes, a bit hackish...
                 this.feature = null;
             }
-        } else {
-            if(this.lastFeature && (previouslyIn || click)) {
-                this.triggerCallback(type, 'out', [this.lastFeature]);
-            }
+        } else if(this.lastFeature && (previouslyIn || click)) {
+            this.triggerCallback(type, 'out', [this.lastFeature]);
         }
         return handled;
     },
@@ -353,6 +334,11 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
                 if(dpx <= this.clickTolerance) {
                     this.callback(key, args);
                 }
+                // we're done with this set of events now: clear the cached
+                // positions so we can't trip over them later (this can occur
+                // if one of the up/down events gets eaten before it gets to us
+                // but we still get the click)
+                this.up = this.down = null;
             } else {
                 this.callback(key, args);
             }
@@ -395,7 +381,6 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
             this.lastFeature = null;
             this.down = null;
             this.up = null;
-            this.touch = false;
             this.map.events.un({
                 "removelayer": this.handleMapEvents,
                 "changelayer": this.handleMapEvents,
diff --git a/lib/OpenLayers/Handler/Hover.js b/lib/OpenLayers/Handler/Hover.js
index 8f230e1..18b81f4 100644
--- a/lib/OpenLayers/Handler/Hover.js
+++ b/lib/OpenLayers/Handler/Hover.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Handler/Keyboard.js b/lib/OpenLayers/Handler/Keyboard.js
index e8fabfe..de7a464 100644
--- a/lib/OpenLayers/Handler/Keyboard.js
+++ b/lib/OpenLayers/Handler/Keyboard.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Handler/MouseWheel.js b/lib/OpenLayers/Handler/MouseWheel.js
index e75ce0a..c69dff3 100644
--- a/lib/OpenLayers/Handler/MouseWheel.js
+++ b/lib/OpenLayers/Handler/MouseWheel.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -21,14 +21,6 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
      */
     wheelListener: null,
 
-    /** 
-     * Property: mousePosition
-     * {<OpenLayers.Pixel>} mousePosition is necessary because
-     * evt.clientX/Y is buggy in Moz on wheel events, so we cache and use the
-     * value from the last mousemove.
-     */
-    mousePosition: null,
-
     /**
      * Property: interval
      * {Integer} In order to increase server performance, an interval (in 
@@ -40,6 +32,14 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
     interval: 0,
     
     /**
+     * Property: maxDelta
+     * {Integer} Maximum delta to collect before breaking from the current
+     *    interval. In cumulative mode, this also limits the maximum delta
+     *    returned from the handler. Default is Number.POSITIVE_INFINITY.
+     */
+    maxDelta: Number.POSITIVE_INFINITY,
+    
+    /**
      * Property: delta
      * {Integer} When interval is set, delta collects the mousewheel z-deltas
      *     of the events that occur within the interval.
@@ -54,7 +54,7 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
      *     negative)
      */
     cumulative: true,
-
+    
     /**
      * Constructor: OpenLayers.Handler.MouseWheel
      *
@@ -101,12 +101,13 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
         
         // Ride up the element's DOM hierarchy to determine if it or any of 
         //  its ancestors was: 
-        //   * specifically marked as scrollable
-        //   * one of our layer divs
+        //   * specifically marked as scrollable (CSS overflow property)
+        //   * one of our layer divs or a div marked as scrollable
+        //     ('olScrollable' CSS class)
         //   * the map div
         //
         var overScrollableDiv = false;
-        var overLayerDiv = false;
+        var allowScroll = false;
         var overMapDiv = false;
         
         var elem = OpenLayers.Event.element(e);
@@ -114,12 +115,13 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
 
             if (!overScrollableDiv) {
                 try {
+                    var overflow;
                     if (elem.currentStyle) {
                         overflow = elem.currentStyle["overflow"];
                     } else {
                         var style = 
                             document.defaultView.getComputedStyle(elem, null);
-                        var overflow = style.getPropertyValue("overflow");
+                        overflow = style.getPropertyValue("overflow");
                     }
                     overScrollableDiv = ( overflow && 
                         (overflow == "auto") || (overflow == "scroll") );
@@ -129,15 +131,18 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
                 }
             }
 
-            if (!overLayerDiv) {
-                for(var i=0, len=this.map.layers.length; i<len; i++) {
-                    // Are we in the layer div? Note that we have two cases
-                    // here: one is to catch EventPane layers, which have a 
-                    // pane above the layer (layer.pane)
-                    if (elem == this.map.layers[i].div 
-                        || elem == this.map.layers[i].pane) { 
-                        overLayerDiv = true;
-                        break;
+            if (!allowScroll) {
+                allowScroll = OpenLayers.Element.hasClass(elem, 'olScrollable');
+                if (!allowScroll) {
+                    for (var i = 0, len = this.map.layers.length; i < len; i++) {
+                        // Are we in the layer div? Note that we have two cases
+                        // here: one is to catch EventPane layers, which have a
+                        // pane above the layer (layer.pane)
+                        var layer = this.map.layers[i];
+                        if (elem == layer.div || elem == layer.pane) {
+                            allowScroll = true;
+                            break;
+                        }
                     }
                 }
             }
@@ -153,7 +158,7 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
         //
         //    otherwise 
         // 
-        //    If we are over the layer div: 
+        //    If we are over the layer div or a 'olScrollable' div:
         //     * zoom/in out
         //     then
         //     * kill event (so as not to also scroll the page after zooming)
@@ -164,26 +169,30 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
         //        layerswitcher or the pan/zoom control)
         //
         if (!overScrollableDiv && overMapDiv) {
-            if (overLayerDiv) {
+            if (allowScroll) {
                 var delta = 0;
-                if (!e) {
-                    e = window.event;
-                }
+                
                 if (e.wheelDelta) {
-                    delta = e.wheelDelta/120; 
-                    if (window.opera && window.opera.version() < 9.2) {
-                        delta = -delta;
+                    delta = e.wheelDelta;
+                    if (delta % 160 === 0) {
+                        // opera have steps of 160 instead of 120
+                        delta = delta * 0.75;
                     }
+                    delta = delta / 120;
                 } else if (e.detail) {
-                    delta = -e.detail / 3;
+                    // detail in Firefox on OS X is 1/3 of Windows
+                    // so force delta 1 / -1
+                    delta = - (e.detail / Math.abs(e.detail));
                 }
-                this.delta = this.delta + delta;
+                this.delta += delta;
 
-                if(this.interval) {
-                    window.clearTimeout(this._timeoutId);
+                window.clearTimeout(this._timeoutId);
+                if(this.interval && Math.abs(this.delta) < this.maxDelta) {
+                    // store e because window.event might change during delay
+                    var evt = OpenLayers.Util.extend({}, e);
                     this._timeoutId = window.setTimeout(
                         OpenLayers.Function.bind(function(){
-                            this.wheelZoom(e);
+                            this.wheelZoom(evt);
                         }, this),
                         this.interval
                     );
@@ -208,46 +217,18 @@ OpenLayers.Handler.MouseWheel = OpenLayers.Class(OpenLayers.Handler, {
         this.delta = 0;
         
         if (delta) {
-            // add the mouse position to the event because mozilla has 
-            // a bug with clientX and clientY (see 
-            // https://bugzilla.mozilla.org/show_bug.cgi?id=352179)
-            // getLonLatFromViewPortPx(e) returns wrong values
-            if (this.mousePosition) {
-                e.xy = this.mousePosition;
-            } 
-            if (!e.xy) {
-                // If the mouse hasn't moved over the map yet, then
-                // we don't have a mouse position (in FF), so we just
-                // act as if the mouse was at the center of the map.
-                // Note that we can tell we are in the map -- and 
-                // this.map is ensured to be true above.
-                e.xy = this.map.getPixelFromLonLat(
-                    this.map.getCenter()
-                );
-            }
+            e.xy = this.map.events.getMousePosition(e);
             if (delta < 0) {
-                this.callback("down", [e, this.cumulative ? delta : -1]);
+                this.callback("down",
+                    [e, this.cumulative ? Math.max(-this.maxDelta, delta) : -1]);
             } else {
-                this.callback("up", [e, this.cumulative ? delta : 1]);
+                this.callback("up",
+                    [e, this.cumulative ? Math.min(this.maxDelta, delta) : 1]);
             }
         }
     },
     
     /**
-     * Method: mousemove
-     * Update the stored mousePosition on every move.
-     * 
-     * Parameters:
-     * evt - {Event} The browser event
-     *
-     * Returns: 
-     * {Boolean} Allow event propagation
-     */
-    mousemove: function (evt) {
-        this.mousePosition = evt.xy;
-    },
-
-    /**
      * Method: activate 
      */
     activate: function (evt) {
diff --git a/lib/OpenLayers/Handler/Path.js b/lib/OpenLayers/Handler/Path.js
index 351a467..28512a1 100644
--- a/lib/OpenLayers/Handler/Path.js
+++ b/lib/OpenLayers/Handler/Path.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -271,6 +271,16 @@ OpenLayers.Handler.Path = OpenLayers.Class(OpenLayers.Handler.Point, {
         var target = components[index];
         var undone = geometry.removeComponent(target);
         if (undone) {
+            // On touch devices, set the current ("mouse location") point to
+            // match the last digitized point.
+            if (this.touch && index > 0) {
+                components = geometry.components; // safety
+                var lastpt = components[index - 1];
+                var curptidx = this.getCurrentPointIndex();
+                var curpt = components[curptidx];
+                curpt.x = lastpt.x;
+                curpt.y = lastpt.y;
+            }
             if (!this.redoStack) {
                 this.redoStack = [];
             }
diff --git a/lib/OpenLayers/Handler/Pinch.js b/lib/OpenLayers/Handler/Pinch.js
index 1d115a2..cd3d086 100644
--- a/lib/OpenLayers/Handler/Pinch.js
+++ b/lib/OpenLayers/Handler/Pinch.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -97,13 +97,17 @@ OpenLayers.Handler.Pinch = OpenLayers.Class(OpenLayers.Handler, {
             };
             this.callback("start", [evt, this.start]);
             propagate = !this.stopDown;
+        } else if (this.started) {
+            // Some webkit versions send fake single-touch events during
+            // multitouch, which cause the drag handler to trigger
+            return false;
         } else {
             this.started = false;
             this.start = null;
             this.last = null;
         }
         // prevent document dragging
-        OpenLayers.Event.stop(evt);
+        OpenLayers.Event.preventDefault(evt);
         return propagate;
     },
 
@@ -125,6 +129,10 @@ OpenLayers.Handler.Pinch = OpenLayers.Class(OpenLayers.Handler, {
             this.last = current;
             // prevent document dragging
             OpenLayers.Event.stop(evt);
+        } else if (this.started) {
+            // Some webkit versions send fake single-touch events during
+            // multitouch, which cause the drag handler to trigger
+            return false;
         }
         return true;
     },
@@ -140,12 +148,13 @@ OpenLayers.Handler.Pinch = OpenLayers.Class(OpenLayers.Handler, {
      * {Boolean} Let the event propagate.
      */
     touchend: function(evt) {
-        if (this.started) {
+        if (this.started && !OpenLayers.Event.isMultiTouch(evt)) {
             this.started = false;
             this.pinching = false;
             this.callback("done", [evt, this.start, this.last]);
             this.start = null;
             this.last = null;
+            return false;
         }
         return true;
     },
@@ -199,8 +208,8 @@ OpenLayers.Handler.Pinch = OpenLayers.Class(OpenLayers.Handler, {
         var t0 = touches[0];
         var t1 = touches[1];
         return Math.sqrt(
-            Math.pow(t0.clientX - t1.clientX, 2) +
-            Math.pow(t0.clientY - t1.clientY, 2)
+            Math.pow(t0.olClientX - t1.olClientX, 2) +
+            Math.pow(t0.olClientY - t1.olClientY, 2)
         );
     },
 
diff --git a/lib/OpenLayers/Handler/Point.js b/lib/OpenLayers/Handler/Point.js
index 903987e..b4bb17c 100644
--- a/lib/OpenLayers/Handler/Point.js
+++ b/lib/OpenLayers/Handler/Point.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -114,12 +114,6 @@ OpenLayers.Handler.Point = OpenLayers.Class(OpenLayers.Handler, {
     pixelTolerance: 5,
 
     /**
-     * Property: touch
-     * {Boolean} Indcates the support of touch events.
-     */
-    touch: false,
-
-    /**
      * Property: lastTouchPx
      * {<OpenLayers.Pixel>} The last pixel used to know the distance between
      * two touches (for double touch).
@@ -216,7 +210,6 @@ OpenLayers.Handler.Point = OpenLayers.Class(OpenLayers.Handler, {
             this.layer.destroy(false);
         }
         this.layer = null;
-        this.touch = false;
         return true;
     },
     
@@ -383,18 +376,7 @@ OpenLayers.Handler.Point = OpenLayers.Class(OpenLayers.Handler, {
      * {Boolean} Allow event propagation
      */
     touchstart: function(evt) {
-        if (!this.touch) {
-            this.touch = true;
-            // unregister mouse listeners
-            this.map.events.un({
-                mousedown: this.mousedown,
-                mouseup: this.mouseup,
-                mousemove: this.mousemove,
-                click: this.click,
-                dblclick: this.dblclick,
-                scope: this
-            });
-        }
+        this.startTouch();
         this.lastTouchPx = evt.xy;
         return this.down(evt);
     },
diff --git a/lib/OpenLayers/Handler/Polygon.js b/lib/OpenLayers/Handler/Polygon.js
index dffaa1a..4f6dfd2 100644
--- a/lib/OpenLayers/Handler/Polygon.js
+++ b/lib/OpenLayers/Handler/Polygon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Handler/RegularPolygon.js b/lib/OpenLayers/Handler/RegularPolygon.js
index b7232a6..bf4e2db 100644
--- a/lib/OpenLayers/Handler/RegularPolygon.js
+++ b/lib/OpenLayers/Handler/RegularPolygon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Icon.js b/lib/OpenLayers/Icon.js
index 2e7f487..2d8f967 100644
--- a/lib/OpenLayers/Icon.js
+++ b/lib/OpenLayers/Icon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Kinetic.js b/lib/OpenLayers/Kinetic.js
index 14f293b..1cd7886 100644
--- a/lib/OpenLayers/Kinetic.js
+++ b/lib/OpenLayers/Kinetic.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Lang.js b/lib/OpenLayers/Lang.js
index 789ce4f..068562d 100644
--- a/lib/OpenLayers/Lang.js
+++ b/lib/OpenLayers/Lang.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Lang/en.js b/lib/OpenLayers/Lang/en.js
index 9ef40f5..8fd0827 100644
--- a/lib/OpenLayers/Lang/en.js
+++ b/lib/OpenLayers/Lang/en.js
@@ -83,9 +83,6 @@ OpenLayers.Lang.en = {
         "This method has been deprecated and will be removed in 3.0. " +
         "Please use ${newMethod} instead.",
 
-    'proxyNeeded': "You probably need to set OpenLayers.ProxyHost to access ${url}."+
-        "See http://trac.osgeo.org/openlayers/wiki/FrequentlyAskedQuestions#ProxyHost",
-
     // **** end ****
     'end': ''
     
diff --git a/lib/OpenLayers/Lang/es.js b/lib/OpenLayers/Lang/es.js
index 7d64367..d8b77b6 100644
--- a/lib/OpenLayers/Lang/es.js
+++ b/lib/OpenLayers/Lang/es.js
@@ -44,8 +44,8 @@ OpenLayers.Lang.es = {
         "Para evitar este mensaje, seleccione una nueva Capa Base " +
         "en el selector de capas en la esquina superior derecha.<br><br>" +
         "Probablemente, esto se debe a que el script de la biblioteca de " +
-	"Google Maps no fue correctamente incluido en su página, o no " +
-	"contiene la clave del API correcta para su sitio.<br><br>" +
+        "Google Maps no fue correctamente incluido en su página, o no " +
+        "contiene la clave del API correcta para su sitio.<br><br>" +
         "Desarrolladores: Para ayudar a hacer funcionar esto correctamente, " +
         "<a href='http://trac.openlayers.org/wiki/Google' " +
         "target='_blank'>haga clic aquí</a>",
@@ -55,7 +55,7 @@ OpenLayers.Lang.es = {
         "Para evitar este mensaje, seleccione una nueva Capa Base " +
         "en el selector de capas en la esquina superior derecha.<br><br>" +
         "Probablemente, esto se debe a que el script de " +
-	"la biblioteca ${layerLib} " +
+        "la biblioteca ${layerLib} " +
         "no fue correctamente incluido en su página.<br><br>" +
         "Desarrolladores: Para ayudar a hacer funcionar esto correctamente, " +
         "<a href='http://trac.openlayers.org/wiki/${layerLib}' " +
diff --git a/lib/OpenLayers/Lang/fr.js b/lib/OpenLayers/Lang/fr.js
index 1042981..c8ecdc9 100644
--- a/lib/OpenLayers/Lang/fr.js
+++ b/lib/OpenLayers/Lang/fr.js
@@ -49,7 +49,5 @@ OpenLayers.Lang["fr"] = OpenLayers.Util.applyDefaults({
 
     'reprojectDeprecated': "Vous utilisez l\'option \'reproject\' sur la couche ${layerName}. Cette option est dépréciée : Son usage permettait d\'afficher des données au dessus de couches raster commerciales.Cette fonctionalité est maintenant supportée en utilisant le support de la projection Mercator Sphérique. Plus d\'information est disponible sur http://trac.openlayers.org/wiki/SphericalMercator.",
 
-    'methodDeprecated': "Cette méthode est dépréciée, et sera supprimée à la version 3.0. Merci d\'utiliser ${newMethod} à la place.",
-
-    'proxyNeeded': "Vous avez très probablement besoin de renseigner OpenLayers.ProxyHost pour accéder à ${url}. Voir http://trac.osgeo.org/openlayers/wiki/FrequentlyAskedQuestions#ProxyHost"
+    'methodDeprecated': "Cette méthode est dépréciée, et sera supprimée à la version 3.0. Merci d\'utiliser ${newMethod} à la place."
 });
diff --git a/lib/OpenLayers/Lang/lt.js b/lib/OpenLayers/Lang/lt.js
index c3e896f..e1f7897 100644
--- a/lib/OpenLayers/Lang/lt.js
+++ b/lib/OpenLayers/Lang/lt.js
@@ -21,7 +21,7 @@ OpenLayers.Lang['lt'] = OpenLayers.Util.applyDefaults({
     'noFID': "Negaliu atnaujinti objekto, kuris neturi FID.",
 
     'browserNotSupported':
-	"Jūsų naršyklė nemoka parodyti vektorių. Šiuo metu galima naudotis tokiais rodymo varikliais:\n{renderers}",
+    "Jūsų naršyklė nemoka parodyti vektorių. Šiuo metu galima naudotis tokiais rodymo varikliais:\n{renderers}",
 
     'commitSuccess': "WFS Tranzakcija: PAVYKO ${response}",
 
@@ -38,8 +38,8 @@ OpenLayers.Lang['lt'] = OpenLayers.Util.applyDefaults({
 
     // console message
     'methodDeprecated':
-	"Šis metodas yra pasenęs ir 3.0 versijoje bus pašalintas. " +
-	"Prašome naudoti ${newMethod}.",
+    "Šis metodas yra pasenęs ir 3.0 versijoje bus pašalintas. " +
+    "Prašome naudoti ${newMethod}.",
 
     // **** end ****
     'end': ''
diff --git a/lib/OpenLayers/Lang/pl.js b/lib/OpenLayers/Lang/pl.js
index 49c33a9..dfaa42a 100644
--- a/lib/OpenLayers/Lang/pl.js
+++ b/lib/OpenLayers/Lang/pl.js
@@ -55,11 +55,11 @@ OpenLayers.Lang["pl"] = OpenLayers.Util.applyDefaults({
 
     'getLayerWarning':
         "Warstwa ${layerType} nie mogła zostać załadowana poprawnie.<br><br>" +
-		"Aby pozbyć się tej wiadomości, wybierz nową Warstwe podstawową " +
+        "Aby pozbyć się tej wiadomości, wybierz nową Warstwe podstawową " +
         "w przełączniku warstw w górnym prawym rogu mapy.<br><br>" +
         "Najprawdopodobniej jest to spowodowane tym, że biblioteka ${layerLib} " +
         "nie jest załadowana, lub może(o ile biblioteka tego wymaga) " +
-		"byc potrzebny klucza do API dla twojej strony<br><br>" +
+        "byc potrzebny klucza do API dla twojej strony<br><br>" +
         "Programisto: Aby uzyskać pomoc , " +
         "<a href='http://trac.openlayers.org/wiki/${layerLib}' " +
         "target='_blank'>kliknij tutaj</a>",
@@ -78,16 +78,12 @@ OpenLayers.Lang["pl"] = OpenLayers.Util.applyDefaults({
         "w warstwie ${layerName} używasz opcji 'reproject'. " +
         "Ta opcja jest przestarzała: " +
         "jej zastosowanie został zaprojektowany, aby wspierać wyświetlania danych przez komercyjne mapy, "+
-		"jednak obecnie ta funkcjonalność powinien zostać osiągnięty za pomocą Spherical Mercator " +
-		"its use was designed to support displaying data over commercial. Więcje informacji na ten temat możesz znaleźć na stronie " + 
+        "jednak obecnie ta funkcjonalność powinien zostać osiągnięty za pomocą Spherical Mercator " +
+        "its use was designed to support displaying data over commercial. Więcje informacji na ten temat możesz znaleźć na stronie " + 
         "http://trac.openlayers.org/wiki/SphericalMercator.",
 
     // console message
     'methodDeprecated':
         "Ta metoda jest przestarzała i będzie usunięta od wersji 3.0. " +
-        "W zamian użyj ${newMethod}.",
-
-    'proxyNeeded': "Prawdopodobnie musisz ustawić OpenLayers.ProxyHost aby otrzymać dostęp do ${url}."+
-        "See http://trac.osgeo.org/openlayers/wiki/FrequentlyAskedQuestions#ProxyHost"
-
+        "W zamian użyj ${newMethod}."
 });
\ No newline at end of file
diff --git a/lib/OpenLayers/Lang/pt-BR.js b/lib/OpenLayers/Lang/pt-BR.js
index e7e7511..60e6779 100644
--- a/lib/OpenLayers/Lang/pt-BR.js
+++ b/lib/OpenLayers/Lang/pt-BR.js
@@ -13,7 +13,7 @@
  *     <OpenLayers.Lang.translate>.  Entry bodies are normal strings or
  *     strings formatted for use with <OpenLayers.String.format> calls.
  */
-OpenLayers.Lang["pt-br"] = OpenLayers.Util.applyDefaults({
+OpenLayers.Lang["pt-BR"] = OpenLayers.Util.applyDefaults({
 
     'unhandledRequest': "A requisição retornou um erro não tratado: ${statusText}",
 
diff --git a/lib/OpenLayers/Lang/ro.js b/lib/OpenLayers/Lang/ro.js
new file mode 100644
index 0000000..6e8a04f
--- /dev/null
+++ b/lib/OpenLayers/Lang/ro.js
@@ -0,0 +1,69 @@
+/**
+ * @requires OpenLayers/Lang.js
+ */
+/**
+ * Namespace: OpenLayers.Lang["ro"]
+ * Dictionary for Romanian.  Keys for entries are used in calls to
+ *     <OpenLayers.Lang.translate>.  Entry bodies are normal strings or
+ *     strings formatted for use with <OpenLayers.String.format> calls.
+*/
+OpenLayers.Lang.ro = {
+    'unhandledRequest': "Cerere nesoluționată return ${statusText}",
+    'Permalink': "Legatură permanentă",
+    'Overlays': "Straturi vector",
+    'Base Layer': "Straturi de bază",
+    'noFID': "Nu pot actualiza un feature pentru care nu există FID.",
+    'browserNotSupported':
+        "Browserul tău nu suportă afișarea vectorilor. Supoetul curent pentru randare:\n${renderers}",
+    // console message
+    'minZoomLevelError':
+        "Proprietatea minZoomLevel este doar pentru a fi folosită " +
+        "cu straturile FixedZoomLevels-descendent. De aceea acest " +
+        "strat wfs verifică dacă minZoomLevel este o relicvă" +
+        ". Nu îl putem , oricum, înlătura fără " +
+        "a afecta aplicațiile Openlayers care depind de ea." +
+        " De aceea considerăm depreciat -- minZoomLevel " +
+        "și îl vom înlătura în 3.0. Folosește " +
+        "min/max resolution cum este descrisă aici: " +
+        "http://trac.openlayers.org/wiki/SettingZoomLevels",
+    'commitSuccess': "Tranzacție WFS: SUCCES ${response}",
+    'commitFailed': "Tranzacție WFS : EȘEC ${response}",
+    'googleWarning':
+        "Stratul Google nu a putut fi încărcat corect.<br><br>" +
+        "Pentru a elimina acest mesaj, selectează un nou strat de bază " +
+        "în Layerswitcher din colțul dreata-sus.<br><br>" +
+        "Asta datorită, faptului că Google Maps library " +
+        "script nu este inclus, sau nu conține " +
+        "cheia API corectă pentru situl tău.<br><br>" +
+        "Developeri: Pentru ajutor, " +
+        "<a href='http://trac.openlayers.org/wiki/Google' " +
+        "target='_blank'>apăsați aici</a>",
+    'getLayerWarning':
+        "Stratul ${layerType} nu a putut fi încărcat corect.<br><br>" +
+        "pentru a înlătura acest mesaj, selectează un nou strat de bază " +
+        "Acesta eroare apare de obicei când ${layerLib} library " +
+        "script nu a fost încărcat corect.<br><br>" +
+        "Developeri: Pentru ajutor privind utilizarea corectă, " +
+        "<a href='http://trac.openlayers.org/wiki/${layerLib}' " +
+        "target='_blank'>apasă aici</a>",
+    'Scale = 1 : ${scaleDenom}': "Scara = 1 : ${scaleDenom}",
+    //labels for the graticule control
+    'W': 'V',
+    'E': 'E',
+    'N': 'N',
+    'S': 'S',
+    'Graticule': 'Graticule',
+    // console message
+    'reprojectDeprecated':
+        "folosești opțiunea 'reproject' " +
+        "pentru stratul ${layerName} . Această opțiune este depreciată: " +
+        "a fost utilizată pentru afișarea straturilor de bază comerciale " + 
+        "Mai multe informații despre proiecția Mercator sunt disponibile aici " +
+        "http://trac.openlayers.org/wiki/SphericalMercator.",
+    // console message
+    'methodDeprecated':
+        "Această metodă este depreciată și va fi înlăturată in versiunea 3.0. " +
+        "folosește metoda ${newMethod}.",
+    // **** end ****
+    'end': ''
+};
diff --git a/lib/OpenLayers/Layer.js b/lib/OpenLayers/Layer.js
index d152400..3bd4186 100644
--- a/lib/OpenLayers/Layer.js
+++ b/lib/OpenLayers/Layer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -86,9 +86,18 @@ OpenLayers.Layer = OpenLayers.Class({
      * element - {DOMElement} A reference to layer.events.element.
      *
      * Supported map event types:
-     * loadstart - Triggered when layer loading starts.
-     * loadend - Triggered when layer loading ends.
-     * visibilitychanged - Triggered when layer visibility is changed.
+     * loadstart - Triggered when layer loading starts.  When using a Vector 
+     *     layer with a Fixed or BBOX strategy, the event object includes 
+     *     a *filter* property holding the OpenLayers.Filter used when 
+     *     calling read on the protocol.
+     * loadend - Triggered when layer loading ends.  When using a Vector layer
+     *     with a Fixed or BBOX strategy, the event object includes a 
+     *     *response* property holding an OpenLayers.Protocol.Response object.
+     * visibilitychanged - Triggered when the layer's visibility property is
+     *     changed, e.g. by turning the layer on or off in the layer switcher.
+     *     Note that the actual visibility of the layer can also change if it
+     *     gets out of range (see <calculateInRange>). If you also want to catch
+     *     these cases, register for the map's 'changelayer' event instead.
      * move - Triggered when layer moves (triggered with every mousemove
      *     during a drag).
      * moveend - Triggered when layer is done moving, object passed as
@@ -119,7 +128,7 @@ OpenLayers.Layer = OpenLayers.Class({
  
     /**
      * Property: alpha
-     * {Boolean} The layer's images have an alpha channel.  Default is false. 
+     * {Boolean} The layer's images have an alpha channel.  Default is false.
      */
     alpha: false,
 
@@ -328,6 +337,11 @@ OpenLayers.Layer = OpenLayers.Class({
 
         this.metadata = {};
         
+        options = OpenLayers.Util.extend({}, options);
+        // make sure we respect alwaysInRange if set on the prototype
+        if (this.alwaysInRange != null) {
+            options.alwaysInRange = this.alwaysInRange;
+        }
         this.addOptions(options);
 
         this.name = name;
@@ -844,7 +858,7 @@ OpenLayers.Layer = OpenLayers.Class({
                 alwaysInRange = false;
             }
         }
-        if(this.alwaysInRange == null) {
+        if(this.options.alwaysInRange == null) {
             this.alwaysInRange = alwaysInRange;
         }
 
diff --git a/lib/OpenLayers/Layer/ArcGIS93Rest.js b/lib/OpenLayers/Layer/ArcGIS93Rest.js
index 57987c0..c5bac36 100644
--- a/lib/OpenLayers/Layer/ArcGIS93Rest.js
+++ b/lib/OpenLayers/Layer/ArcGIS93Rest.js
@@ -1,9 +1,8 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
-
 /**
  * @requires OpenLayers/Layer/Grid.js
  */
diff --git a/lib/OpenLayers/Layer/ArcGISCache.js b/lib/OpenLayers/Layer/ArcGISCache.js
index 2717339..99f7dda 100644
--- a/lib/OpenLayers/Layer/ArcGISCache.js
+++ b/lib/OpenLayers/Layer/ArcGISCache.js
@@ -1,3 +1,8 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
 /** 
  * @requires OpenLayers/Layer/XYZ.js
  */ 
@@ -359,6 +364,17 @@ OpenLayers.Layer.ArcGISCache = OpenLayers.Class(OpenLayers.Layer.XYZ, {
     },
 
     /**
+     * Method: initGriddedTiles
+     * 
+     * Parameters:
+     * bounds - {<OpenLayers.Bounds>}
+     */
+    initGriddedTiles: function(bounds) {
+        delete this._tileOrigin;
+        OpenLayers.Layer.XYZ.prototype.initGriddedTiles.apply(this, arguments);
+    },
+    
+    /**
      * Method: getMaxExtent
      * Get this layer's maximum extent.
      *
@@ -379,8 +395,11 @@ OpenLayers.Layer.ArcGISCache = OpenLayers.Class(OpenLayers.Layer.XYZ, {
      * {<OpenLayers.LonLat>} The tile origin.
      */
     getTileOrigin: function() {
-        var extent = this.getMaxExtent();
-        return new OpenLayers.LonLat(extent.left, extent.bottom);
+        if (!this._tileOrigin) {
+            var extent = this.getMaxExtent();
+            this._tileOrigin = new OpenLayers.LonLat(extent.left, extent.bottom);
+        }
+        return this._tileOrigin;
     },
 
    /**
@@ -443,9 +462,9 @@ OpenLayers.Layer.ArcGISCache = OpenLayers.Class(OpenLayers.Layer.XYZ, {
             url = url + '/tile/${z}/${y}/${x}';
         } else {
             // The tile images are stored using hex values on disk.
-            x = 'C' + this.zeroPad(x, 8, 16);
-            y = 'R' + this.zeroPad(y, 8, 16);
-            z = 'L' + this.zeroPad(z, 2, 16);
+            x = 'C' + OpenLayers.Number.zeroPad(x, 8, 16);
+            y = 'R' + OpenLayers.Number.zeroPad(y, 8, 16);
+            z = 'L' + OpenLayers.Number.zeroPad(z, 2, 10);
             url = url + '/${z}/${y}/${x}.' + this.type;
         }
 
@@ -457,23 +476,5 @@ OpenLayers.Layer.ArcGISCache = OpenLayers.Class(OpenLayers.Layer.XYZ, {
         );
     },
 
-    /**
-     * Method: zeroPad
-     * Create a zero padded string optionally with a radix for casting numbers.
-     *
-     * Parameters:
-     * num - {Number} The number to be zero padded.
-     * len - {Number} The length of the string to be returned.
-     * radix - {Number} An integer between 2 and 36 specifying the base to use
-     *     for representing numeric values.
-     */
-    zeroPad: function(num, len, radix) {
-        var str = num.toString(radix || 10);
-        while (str.length < len) {
-            str = "0" + str;
-        }
-        return str;
-    },
-
     CLASS_NAME: 'OpenLayers.Layer.ArcGISCache' 
 }); 
diff --git a/lib/OpenLayers/Layer/ArcIMS.js b/lib/OpenLayers/Layer/ArcIMS.js
index 90d9221..e19584c 100644
--- a/lib/OpenLayers/Layer/ArcIMS.js
+++ b/lib/OpenLayers/Layer/ArcIMS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/Bing.js b/lib/OpenLayers/Layer/Bing.js
index 51c2b9d..0615285 100644
--- a/lib/OpenLayers/Layer/Bing.js
+++ b/lib/OpenLayers/Layer/Bing.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -58,6 +58,12 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
      * {Object} Metadata for this layer, as returned by the callback script
      */
     metadata: null,
+
+    /**
+     * Property: protocolRegex
+     * {RegExp} Regular expression to match and replace http: in bing urls
+     */
+    protocolRegex: /^http:/i,
     
     /**
      * APIProperty: type
@@ -91,6 +97,20 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
      */
     tileOptions: null,
 
+    /** APIProperty: protocol
+     *  {String} Protocol to use to fetch Imagery Metadata, tiles and bing logo
+     *  Can be 'http:' 'https:' or ''
+     *
+     *  Warning: tiles may not be available under both HTTP and HTTPS protocols.
+     *  Microsoft approved use of both HTTP and HTTPS urls for tiles. However
+     *  this is undocumented and the Imagery Metadata API always returns HTTP
+     *  urls.
+     *
+     *  Default is '', unless when executed from a file:/// uri, in which case
+     *  it is 'http:'.
+     */
+    protocol: ~window.location.href.indexOf('http') ? '' : 'http:',
+
     /**
      * Constructor: OpenLayers.Layer.Bing
      * Create a new Bing layer.
@@ -145,7 +165,7 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
             jsonp: this._callbackId,
             include: "ImageryProviders"
         }, this.metadataParams);
-        var url = "http://dev.virtualearth.net/REST/v1/Imagery/Metadata/" +
+        var url = this.protocol + "//dev.virtualearth.net/REST/v1/Imagery/Metadata/" +
             this.type + "?" + OpenLayers.Util.getParameterString(params);
         var script = document.createElement("script");
         script.type = "text/javascript";
@@ -163,6 +183,7 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
         var res = this.metadata.resourceSets[0].resources[0];
         var url = res.imageUrl.replace("{quadkey}", "${quadkey}");
         url = url.replace("{culture}", this.culture);
+        url = url.replace(this.protocolRegex, this.protocol);
         this.url = [];
         for (var i=0; i<res.imageUrlSubdomains.length; ++i) {
             this.url.push(url.replace("{subdomain}", res.imageUrlSubdomains[i]));
@@ -176,8 +197,12 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
                 res.zoomMax + 1 - res.zoomMin, this.numZoomLevels
             )
         }, true);
+        if (!this.isBaseLayer) {
+            this.redraw();
+        }
+        this.updateAttribution();
     },
-
+    
     /**
      * Method: getURL
      *
@@ -223,7 +248,7 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
             this.map.getProjectionObject(),
             new OpenLayers.Projection("EPSG:4326")
         );
-        var providers = res.imageryProviders,
+        var providers = res.imageryProviders || [],
             zoom = OpenLayers.Util.indexOf(this.serverResolutions,
                                            this.getServerResolution()),
             copyrights = "", provider, i, ii, j, jj, bbox, coverage;
@@ -239,9 +264,10 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
                 }
             }
         }
+        var logo = metadata.brandLogoUri.replace(this.protocolRegex, this.protocol);
         this.attribution = OpenLayers.String.format(this.attributionTemplate, {
             type: this.type.toLowerCase(),
-            logo: metadata.brandLogoUri,
+            logo: logo,
             copyrights: copyrights
         });
         this.map && this.map.events.triggerEvent("changelayer", {
@@ -255,7 +281,6 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
      */
     setMap: function() {
         OpenLayers.Layer.XYZ.prototype.setMap.apply(this, arguments);
-        this.updateAttribution();
         this.map.events.register("moveend", this, this.updateAttribution);
     },
     
diff --git a/lib/OpenLayers/Layer/Boxes.js b/lib/OpenLayers/Layer/Boxes.js
index 5ad229e..7cd605a 100644
--- a/lib/OpenLayers/Layer/Boxes.js
+++ b/lib/OpenLayers/Layer/Boxes.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/EventPane.js b/lib/OpenLayers/Layer/EventPane.js
index 6df7312..15a852f 100644
--- a/lib/OpenLayers/Layer/EventPane.js
+++ b/lib/OpenLayers/Layer/EventPane.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/FixedZoomLevels.js b/lib/OpenLayers/Layer/FixedZoomLevels.js
index 80ab0f8..f647238 100644
--- a/lib/OpenLayers/Layer/FixedZoomLevels.js
+++ b/lib/OpenLayers/Layer/FixedZoomLevels.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/GeoRSS.js b/lib/OpenLayers/Layer/GeoRSS.js
index bcf5521..564d071 100644
--- a/lib/OpenLayers/Layer/GeoRSS.js
+++ b/lib/OpenLayers/Layer/GeoRSS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/Google.js b/lib/OpenLayers/Layer/Google.js
index c744b11..6e85fba 100644
--- a/lib/OpenLayers/Layer/Google.js
+++ b/lib/OpenLayers/Layer/Google.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -274,6 +274,10 @@ OpenLayers.Layer.Google = OpenLayers.Class(
             if (poweredBy && poweredBy.parentNode) {
                 poweredBy.parentNode.removeChild(poweredBy);
             }
+            if (this.mapObject && window.google && google.maps &&
+                    google.maps.event && google.maps.event.clearListeners) {
+                google.maps.event.clearListeners(this.mapObject, 'tilesloaded');
+            }
         }
     },
 
diff --git a/lib/OpenLayers/Layer/Google/v3.js b/lib/OpenLayers/Layer/Google/v3.js
index db98c8e..067b7a0 100644
--- a/lib/OpenLayers/Layer/Google/v3.js
+++ b/lib/OpenLayers/Layer/Google/v3.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -15,35 +15,6 @@
  * 
  * To use this layer, you must include the GMaps v3 API in your html.
  * 
- * Because OpenLayers needs to control mouse events, it isolates the GMaps mapObject
- * (the DOM elements provided by Google) using the EventPane.
- * However, because the Terms of Use require some of those elements,
- * such as the links to Google's terms, to be clickable, these elements have 
- * to be moved up to OpenLayers' container div. There is however no easy way
- * to identify these, and the logic (see the repositionMapElements function
- * in the source) may need to be changed if Google changes them.
- * These elements are not part of the published API and can be changed at any time,
- * so a given OpenLayers release can only guarantee support for the 'frozen'
- * Google release at the time of the OpenLayers release. See
- * https://developers.google.com/maps/documentation/javascript/basics#Versioning
- * for Google's current release cycle.
- * 
- * For this reason, it's recommended that production code specifically loads 
- * the current frozen version, for example:
- *
- * (code)
- * <script src="http://maps.google.com/maps/api/js?v=3.7&sensor=false"></script>
- * (end)
- * 
- * but that development code should use the latest 'nightly' version, so that any
- * problems can be dealt with as soon as they arise, and before they affect the production, 'frozen', code.
- * 
- * Note, however, that frozen versions are retired as part of Google's release
- * cycle, and once this happens, you will get the next version, in the example above, 3.8 once 3.7 is retired.
- * 
- * This version supports 3.7.
- * 
- * 
  * Note that this layer configures the google.maps.map object with the
  * "disableDefaultUI" option set to true. Using UI controls that the Google
  * Maps API provides is not supported by the OpenLayers API.
@@ -82,10 +53,9 @@ OpenLayers.Layer.Google.v3 = {
 
     /** 
      * Method: loadMapObject
-     * Load the GMap and register appropriate event listeners. If we can't 
-     *     load GMap2, then display a warning message.
+     * Load the GMap and register appropriate event listeners.
      */
-    loadMapObject:function() {
+    loadMapObject: function() {
         if (!this.type) {
             this.type = google.maps.MapTypeId.ROADMAP;
         }
@@ -98,18 +68,13 @@ OpenLayers.Layer.Google.v3 = {
             ++cache.count;
         } else {
             // this is the first Google layer for this map
-
-            var container = this.map.viewPortDiv;
-            var div = document.createElement("div");
-            div.id = this.map.id + "_GMapContainer";
-            div.style.position = "absolute";
-            div.style.width = "100%";
-            div.style.height = "100%";
-            container.appendChild(div);
-
-            // create GMap and shuffle elements
+            // create GMap
             var center = this.map.getCenter();
-            mapObject = new google.maps.Map(div, {
+            var container = document.createElement('div');
+            container.className = "olForeignContainer";
+            container.style.width = '100%';
+            container.style.height = '100%';
+            mapObject = new google.maps.Map(container, {
                 center: center ?
                     new google.maps.LatLng(center.lat, center.lon) :
                     new google.maps.LatLng(0, 0),
@@ -122,95 +87,30 @@ OpenLayers.Layer.Google.v3 = {
                 scrollwheel: false,
                 streetViewControl: false
             });
+            var googleControl = document.createElement('div');
+            googleControl.style.width = '100%';
+            googleControl.style.height = '100%';
+            mapObject.controls[google.maps.ControlPosition.TOP_LEFT].push(googleControl);
             
             // cache elements for use by any other google layers added to
             // this same map
             cache = {
+                googleControl: googleControl,
                 mapObject: mapObject,
                 count: 1
             };
             OpenLayers.Layer.Google.cache[this.map.id] = cache;
-            this.repositionListener = google.maps.event.addListenerOnce(
-                mapObject, 
-                "center_changed", 
-                OpenLayers.Function.bind(this.repositionMapElements, this)
-            );
         }
         this.mapObject = mapObject;
         this.setGMapVisibility(this.visibility);
     },
     
     /**
-     * Method: repositionMapElements
-     *
-     * Waits until powered by and terms of use elements are available and then
-     * moves them so they are clickable.
-     */
-    repositionMapElements: function() {
-
-        // This is the first time any Google layer in this mapObject has been
-        // made visible.  The mapObject needs to know the container size.
-        google.maps.event.trigger(this.mapObject, "resize");
-        
-        var div = this.mapObject.getDiv().firstChild;
-        if (!div || div.childNodes.length < 3) {
-            this.repositionTimer = window.setTimeout(
-                OpenLayers.Function.bind(this.repositionMapElements, this),
-                250
-            );
-            return false;
-        }
-
-        var cache = OpenLayers.Layer.Google.cache[this.map.id];
-        var container = this.map.viewPortDiv;
-        
-        // move the ToS and branding stuff up to the container div
-        // depends on value of zIndex, which is not robust
-        for (var i=div.children.length-1; i>=0; --i) {
-            if (div.children[i].style.zIndex == 1000001) {
-                var termsOfUse = div.children[i];
-                container.appendChild(termsOfUse);
-                termsOfUse.style.zIndex = "1100";
-                termsOfUse.style.bottom = "";
-                termsOfUse.className = "olLayerGoogleCopyright olLayerGoogleV3";
-                termsOfUse.style.display = "";
-                cache.termsOfUse = termsOfUse;
-            }
-            if (div.children[i].style.zIndex == 1000000) {
-                var poweredBy = div.children[i];
-                container.appendChild(poweredBy);
-                poweredBy.style.zIndex = "1100";
-                poweredBy.style.bottom = "";
-                poweredBy.className = "olLayerGooglePoweredBy olLayerGoogleV3 gmnoprint";
-                poweredBy.style.display = "";
-                cache.poweredBy = poweredBy;
-            }
-            if (div.children[i].style.zIndex == 10000002) {
-                container.appendChild(div.children[i]);
-            }
-        }
-
-        this.setGMapVisibility(this.visibility);
-
-    },
-
-    /**
      * APIMethod: onMapResize
      */
     onMapResize: function() {
         if (this.visibility) {
             google.maps.event.trigger(this.mapObject, "resize");
-        } else {
-            var cache = OpenLayers.Layer.Google.cache[this.map.id];
-            if (!cache.resized) {
-                var layer = this;
-                google.maps.event.addListenerOnce(this.mapObject, "tilesloaded", function() {
-                    google.maps.event.trigger(layer.mapObject, "resize");
-                    layer.moveTo(layer.map.getCenter(), layer.map.getZoom());
-                    delete cache.resized;
-                });
-            }
-            cache.resized = true;
         }
     },
 
@@ -223,9 +123,10 @@ OpenLayers.Layer.Google.v3 = {
      */
     setGMapVisibility: function(visible) {
         var cache = OpenLayers.Layer.Google.cache[this.map.id];
+        var map = this.map;
         if (cache) {
             var type = this.type;
-            var layers = this.map.layers;
+            var layers = map.layers;
             var layer;
             for (var i=layers.length-1; i>=0; --i) {
                 layer = layers[i];
@@ -238,27 +139,24 @@ OpenLayers.Layer.Google.v3 = {
             }
             var container = this.mapObject.getDiv();
             if (visible === true) {
-                this.mapObject.setMapTypeId(type);                
-                container.style.left = "";
-                if (cache.termsOfUse && cache.termsOfUse.style) {
-                    cache.termsOfUse.style.left = "";
-                    cache.termsOfUse.style.display = "";
-                    cache.poweredBy.style.display = "";            
-                }
-                cache.displayed = this.id;
-            } else {
-                delete cache.displayed;
-                container.style.left = "-9999px";
-                if (cache.termsOfUse && cache.termsOfUse.style) {
-                    cache.termsOfUse.style.display = "none";
-                    // move ToU far to the left in addition to setting
-                    // display to "none", because at the end of the GMap
-                    // load sequence, display: none will be unset and ToU
-                    // would be visible after loading a map with a google
-                    // layer that is initially hidden. 
-                    cache.termsOfUse.style.left = "-9999px";
-                    cache.poweredBy.style.display = "none";
+                if (container.parentNode !== map.div) {
+                    if (!cache.rendered) {
+                        var me = this;
+                        google.maps.event.addListenerOnce(this.mapObject, 'tilesloaded', function() {
+                            cache.rendered = true;
+                            me.setGMapVisibility(me.getVisibility());
+                            me.moveTo(me.map.getCenter());
+                        });
+                    } else {
+                        map.div.appendChild(container);
+                        cache.googleControl.appendChild(map.viewPortDiv);
+                        google.maps.event.trigger(this.mapObject, 'resize');
+                    }
                 }
+                this.mapObject.setMapTypeId(type);                
+            } else if (cache.googleControl.hasChildNodes()) {
+                map.div.appendChild(map.viewPortDiv);
+                map.div.removeChild(container);
             }
         }
     },
@@ -448,20 +346,6 @@ OpenLayers.Layer.Google.v3 = {
      */
     getMapObjectPixelFromXY: function(x, y) {
         return new google.maps.Point(x, y);
-    },
-        
-    /**
-     * APIMethod: destroy
-     * Clean up this layer.
-     */
-    destroy: function() {
-        if (this.repositionListener) {
-            google.maps.event.removeListener(this.repositionListener);
-        }
-        if (this.repositionTimer) {
-            window.clearTimeout(this.repositionTimer);
-        }
-        OpenLayers.Layer.Google.prototype.destroy.apply(this, arguments);
     }
     
 };
diff --git a/lib/OpenLayers/Layer/Grid.js b/lib/OpenLayers/Layer/Grid.js
index b1d45ee..a94075f 100644
--- a/lib/OpenLayers/Layer/Grid.js
+++ b/lib/OpenLayers/Layer/Grid.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -77,6 +77,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     /** APIProperty: ratio
      *  {Float} Used only when in single-tile mode, this specifies the 
      *          ratio of the size of the single tile to the size of the map.
+     *          Default value is 1.5.
      */
     ratio: 1.5,
 
@@ -96,16 +97,21 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * {String} The transition effect to use when the map is zoomed.
      * Two posible values:
      *
-     * null - No transition effect (the default).
      * "resize" - Existing tiles are resized on zoom to provide a visual
-     * effect of the zoom having taken place immediately.  As the
-     * new tiles become available, they are drawn over top of the
-     * resized tiles.
+     *     effect of the zoom having taken place immediately.  As the
+     *     new tiles become available, they are drawn on top of the
+     *     resized tiles (this is the default setting).
+     * "map-resize" - Existing tiles are resized on zoom and placed below the
+     *     base layer.  New tiles for the base layer will cover existing tiles.
+     *     This setting is recommended when having an overlay duplicated during
+     *     the transition is undesirable (e.g. street labels or big transparent
+     *     fills). 
+     * null - No transition effect.
      *
      * Using "resize" on non-opaque layers can cause undesired visual
-     * effects. This is therefore discouraged.
+     * effects.  Set transitionEffect to null in this case.
      */
-    transitionEffect: null,
+    transitionEffect: "resize",
 
     /**
      * APIProperty: numLoadingTiles
@@ -114,14 +120,6 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     numLoadingTiles: 0,
 
     /**
-     * APIProperty: tileLoadingDelay
-     * {Integer} Number of milliseconds before we shift and load
-     *     tiles when panning. Ignored if <OpenLayers.Animation.isNative> is
-     *     true. Default is 85.
-     */
-    tileLoadingDelay: 85,
-    
-    /**
      * Property: serverResolutions
      * {Array(Number}} This property is documented in subclasses as
      *     an API property.
@@ -129,32 +127,6 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     serverResolutions: null,
 
     /**
-     * Property: moveTimerId
-     * {Number} The id of the <deferMoveGriddedTiles> timer.
-     */
-    moveTimerId: null,
-    
-    /**
-     * Property: deferMoveGriddedTiles
-     * {Function} A function that defers execution of <moveGriddedTiles> by
-     *     <tileLoadingDelay>. If <OpenLayers.Animation.isNative> is true, this
-     *     is null and unused.
-     */
-    deferMoveGriddedTiles: null,
-
-    /**
-     * Property: tileQueueId
-     * {Number} The id of the <drawTileFromQueue> animation.
-     */
-    tileQueueId: null,
-
-    /**
-     * Property: tileQueue
-     * {Array(<OpenLayers.Tile>)} Tiles queued for drawing.
-     */
-    tileQueue: null,
-    
-    /**
      * Property: loading
      * {Boolean} Indicates if tiles are being loaded.
      */
@@ -168,8 +140,9 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
 
     /**
      * Property: gridResolution
-     * {Number} The resolution of the current grid. Used for backbuffering.
-     *     This property is updated each the grid is initialized.
+     * {Number} The resolution of the current grid. Used for backbuffer and
+     *     client zoom. This property is updated every time the grid is
+     *     initialized.
      */
     gridResolution: null,
 
@@ -239,7 +212,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      *     should not be zero.
      */
     className: null,
-
+    
     /**
      * Register a listener for a particular event with the following syntax:
      * (code)
@@ -254,6 +227,9 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * element - {DOMElement} A reference to layer.events.element.
      *
      * Supported event types:
+     * addtile - Triggered when a tile is added to this layer. Listeners receive
+     *     an object as first argument, which has a tile property that
+     *     references the tile that has been added.
      * tileloadstart - Triggered when a tile starts loading. Listeners receive
      *     an object as first argument, which has a tile property that
      *     references the tile that starts loading.
@@ -261,15 +237,40 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      *     loaded, as a means of progress update to listeners.
      *     listeners can access 'numLoadingTiles' if they wish to keep
      *     track of the loading progress. Listeners are called with an object
-     *     with a tile property as first argument, making the loded tile
-     *     available to the listener.
+     *     with a 'tile' property as first argument, making the loaded tile
+     *     available to the listener, and an 'aborted' property, which will be
+     *     true when loading was aborted and no tile data is available.
      * tileerror - Triggered before the tileloaded event (i.e. when the tile is
      *     still hidden) if a tile failed to load. Listeners receive an object
      *     as first argument, which has a tile property that references the
      *     tile that could not be loaded.
+     * retile - Triggered when the layer recreates its tile grid.
      */
 
     /**
+     * Property: gridLayout
+     * {Object} Object containing properties tilelon, tilelat, startcol,
+     * startrow
+     */
+    gridLayout: null,
+    
+    /**
+     * Property: rowSign
+     * {Number} 1 for grids starting at the top, -1 for grids starting at the
+     * bottom. This is used for several grid index and offset calculations.
+     */
+    rowSign: null,
+
+    /**
+     * Property: transitionendEvents
+     * {Array} Event names for transitionend
+     */
+    transitionendEvents: [
+        'transitionend', 'webkitTransitionEnd', 'otransitionend',
+        'oTransitionEnd'
+    ],
+
+    /**
      * Constructor: OpenLayers.Layer.Grid
      * Create a new grid layer
      *
@@ -283,23 +284,27 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
         OpenLayers.Layer.HTTPRequest.prototype.initialize.apply(this, 
                                                                 arguments);
         this.grid = [];
-        this.tileQueue = [];
+        this._removeBackBuffer = OpenLayers.Function.bind(this.removeBackBuffer, this);
+
+        this.initProperties();
+
+        this.rowSign = this.tileOriginCorner.substr(0, 1) === "t" ? 1 : -1;
+    },
 
-        if (this.removeBackBufferDelay === null) {
+    /**
+     * Method: initProperties
+     * Set any properties that depend on the value of singleTile.
+     * Currently sets removeBackBufferDelay and className
+     */
+    initProperties: function() {
+        if (this.options.removeBackBufferDelay === undefined) {
             this.removeBackBufferDelay = this.singleTile ? 0 : 2500;
         }
-        
-        if (this.className === null) {
+
+        if (this.options.className === undefined) {
             this.className = this.singleTile ? 'olLayerGridSingleTile' :
                                                'olLayerGrid';
         }
-
-        if (!OpenLayers.Animation.isNative) {
-            this.deferMoveGriddedTiles = OpenLayers.Function.bind(function() {
-                this.moveGriddedTiles(true);
-                this.moveTimerId = null;
-            }, this);
-        }
     },
 
     /**
@@ -321,15 +326,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * map - {<OpenLayers.Map>} The map.
      */
     removeMap: function(map) {
-        if (this.moveTimerId !== null) {
-            window.clearTimeout(this.moveTimerId);
-            this.moveTimerId = null;
-        }
-        this.clearTileQueue();
-        if(this.backBufferTimerId !== null) {
-            window.clearTimeout(this.backBufferTimerId);
-            this.backBufferTimerId = null;
-        }
+        this.removeBackBuffer();
     },
 
     /**
@@ -346,12 +343,26 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     },
 
     /**
+     * APIMethod: mergeNewParams
+     * Refetches tiles with new params merged, keeping a backbuffer. Each
+     * loading new tile will have a css class of '.olTileReplacing'. If a
+     * stylesheet applies a 'display: none' style to that class, any fade-in
+     * transition will not apply, and backbuffers for each tile will be removed
+     * as soon as the tile is loaded.
+     * 
+     * Parameters:
+     * newParams - {Object}
+     *
+     * Returns:
+     * redrawn: {Boolean} whether the layer was actually redrawn.
+     */
+
+    /**
      * Method: clearGrid
      * Go through and remove all tiles from the grid, calling
      *    destroy() on each of them to kill circular references
      */
     clearGrid:function() {
-        this.clearTileQueue();
         if (this.grid) {
             for(var iRow=0, len=this.grid.length; iRow<len; iRow++) {
                 var row = this.grid[iRow];
@@ -362,6 +373,30 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
             }
             this.grid = [];
             this.gridResolution = null;
+            this.gridLayout = null;
+        }
+    },
+
+   /**
+    * APIMethod: addOptions
+    * 
+    * Parameters:
+    * newOptions - {Object}
+    * reinitialize - {Boolean} If set to true, and if resolution options of the
+    *     current baseLayer were changed, the map will be recentered to make
+    *     sure that it is displayed with a valid resolution, and a
+    *     changebaselayer event will be triggered.
+    */
+    addOptions: function (newOptions, reinitialize) {
+        var singleTileChanged = newOptions.singleTile !== undefined && 
+            newOptions.singleTile !== this.singleTile;
+        OpenLayers.Layer.HTTPRequest.prototype.addOptions.apply(this, arguments);
+        if (this.map && singleTileChanged) {
+            this.initProperties();
+            this.clearGrid();
+            this.tileSize = this.options.tileSize;
+            this.setTileSize();
+            this.moveTo(null, true);
         }
     },
     
@@ -395,13 +430,11 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
         // we do not want to copy reference to grid, so we make a new array
         obj.grid = [];
         obj.gridResolution = null;
-        // same for backbuffer and tile queue
+        // same for backbuffer
         obj.backBuffer = null;
         obj.backBufferTimerId = null;
-        obj.tileQueue = [];
-        obj.tileQueueId = null;
         obj.loading = false;
-        obj.moveTimerId = null;
+        obj.numLoadingTiles = 0;
 
         return obj;
     },    
@@ -458,7 +491,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
                     }
 
                     if(!zoomChanged || this.transitionEffect === 'resize') {
-                        this.applyBackBuffer(serverResolution);
+                        this.applyBackBuffer(resolution);
                     }
 
                     this.initSingleTile(bounds);
@@ -477,25 +510,10 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
                             this.map.getMaxExtent()
                     });
 
-                if(resolution !== serverResolution) {
-                    bounds = this.map.calculateBounds(null, serverResolution);
-                    if(forceReTile) {
-                        // stretch the layer div
-                        var scale = serverResolution / resolution;
-                        this.transformDiv(scale);
-                    }
-                } else {
-                    // reset the layer width, height, left, top, to deal with
-                    // the case where the layer was previously transformed
-                    this.div.style.width = '100%';
-                    this.div.style.height = '100%';
-                    this.div.style.left = '0%';
-                    this.div.style.top = '0%';
-                }
-
                 if(forceReTile) {
-                    if(zoomChanged && this.transitionEffect === 'resize') {
-                        this.applyBackBuffer(serverResolution);
+                    if(zoomChanged && (this.transitionEffect === 'resize' ||
+                                          this.gridResolution === resolution)) {
+                        this.applyBackBuffer(resolution);
                     }
                     this.initGriddedTiles(bounds);
                 } else {
@@ -564,50 +582,6 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     },
     
     /**
-     * Method: queueTileDraw
-     * Adds a tile to the animation queue that will draw it.
-     *
-     * Parameters:
-     * evt - {Object} Listener argument of the tile's beforedraw event
-     */
-    queueTileDraw: function(evt) {
-        var tile = evt.object;
-        if (!~OpenLayers.Util.indexOf(this.tileQueue, tile)) {
-            // queue only if not in queue already
-            this.tileQueue.push(tile);
-        }
-        if (!this.tileQueueId) {
-            this.tileQueueId = OpenLayers.Animation.start(
-                OpenLayers.Function.bind(this.drawTileFromQueue, this),
-                null, this.div
-            );
-        }
-        return false;
-    },
-    
-    /**
-     * Method: drawTileFromQueue
-     * Draws the first tile from the tileQueue, and unqueues that tile
-     */
-    drawTileFromQueue: function() {
-        if (this.tileQueue.length === 0) {
-            this.clearTileQueue();
-        } else {
-            this.tileQueue.shift().draw(true);
-        }
-    },
-    
-    /**
-     * Method: clearTileQueue
-     * Clears the animation queue
-     */
-    clearTileQueue: function() {
-        OpenLayers.Animation.stop(this.tileQueueId);
-        this.tileQueueId = null;
-        this.tileQueue = [];
-    },
-
-    /**
      * Method: destroyTile
      *
      * Parameters:
@@ -620,31 +594,31 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
 
     /**
      * Method: getServerResolution
-     * Return the closest highest server-supported resolution. Throw an
-     * exception if none is found in the serverResolutions array.
+     * Return the closest server-supported resolution.
      *
      * Parameters:
      * resolution - {Number} The base resolution. If undefined the
      *     map resolution is used.
      *
      * Returns:
-     * {Number} The closest highest server resolution value.
+     * {Number} The closest server resolution value.
      */
     getServerResolution: function(resolution) {
+        var distance = Number.POSITIVE_INFINITY;
         resolution = resolution || this.map.getResolution();
         if(this.serverResolutions &&
            OpenLayers.Util.indexOf(this.serverResolutions, resolution) === -1) {
-            var i, serverResolution;
+            var i, newDistance, newResolution, serverResolution;
             for(i=this.serverResolutions.length-1; i>= 0; i--) {
-                serverResolution = this.serverResolutions[i];
-                if(serverResolution > resolution) {
-                    resolution = serverResolution;
+                newResolution = this.serverResolutions[i];
+                newDistance = Math.abs(newResolution - resolution);
+                if (newDistance > distance) {
                     break;
                 }
+                distance = newDistance;
+                serverResolution = newResolution;
             }
-            if(i === -1) {
-                throw 'no appropriate resolution in serverResolutions';
-            }
+            resolution = serverResolution;
         }
         return resolution;
     },
@@ -666,44 +640,6 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     },
 
     /**
-     * Method: transformDiv
-     * Transform the layer div.
-     *
-     * Parameters:
-     * scale - {Number} The value by which the layer div is to
-     *     be scaled.
-     */
-    transformDiv: function(scale) {
-
-        // scale the layer div
-
-        this.div.style.width = 100 * scale + '%';
-        this.div.style.height = 100 * scale + '%';
-
-        // and translate the layer div as necessary
-
-        var size = this.map.getSize();
-        var lcX = parseInt(this.map.layerContainerDiv.style.left, 10);
-        var lcY = parseInt(this.map.layerContainerDiv.style.top, 10);
-        var x = (lcX - (size.w / 2.0)) * (scale - 1);
-        var y = (lcY - (size.h / 2.0)) * (scale - 1);
-
-        this.div.style.left = x + '%';
-        this.div.style.top = y + '%';
-    },
-
-    /**
-     * Method: getResolutionScale
-     * Return the value by which the layer is currently scaled.
-     *
-     * Returns:
-     * {Number} The resolution scale.
-     */
-    getResolutionScale: function() {
-        return parseInt(this.div.style.width, 10) / 100;
-    },
-
-    /**
      * Method: applyBackBuffer
      * Create, insert, scale and position a back buffer for the layer.
      *
@@ -720,7 +656,11 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
             if(!backBuffer) {
                 return;
             }
-            this.div.insertBefore(backBuffer, this.div.firstChild);
+            if (resolution === this.gridResolution) {
+                this.div.insertBefore(backBuffer, this.div.firstChild);
+            } else {
+                this.map.baseLayer.div.parentNode.insertBefore(backBuffer, this.map.baseLayer.div);
+            }
             this.backBuffer = backBuffer;
 
             // set some information in the instance for subsequent
@@ -733,21 +673,26 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
             };
             this.backBufferResolution = this.gridResolution;
         }
-
-        var style = backBuffer.style;
-
-        // scale the back buffer
+        
         var ratio = this.backBufferResolution / resolution;
-        style.width = 100 * ratio + '%';
-        style.height = 100 * ratio + '%';
+
+        // scale the tiles inside the back buffer
+        var tiles = backBuffer.childNodes, tile;
+        for (var i=tiles.length-1; i>=0; --i) {
+            tile = tiles[i];
+            tile.style.top = ((ratio * tile._i * tile._h) | 0) + 'px';
+            tile.style.left = ((ratio * tile._j * tile._w) | 0) + 'px';
+            tile.style.width = Math.round(ratio * tile._w) + 'px';
+            tile.style.height = Math.round(ratio * tile._h) + 'px';
+        }
 
         // and position it (based on the grid's top-left corner)
         var position = this.getViewPortPxFromLonLat(
                 this.backBufferLonLat, resolution);
-        var leftOffset = parseInt(this.map.layerContainerDiv.style.left, 10);
-        var topOffset = parseInt(this.map.layerContainerDiv.style.top, 10);
-        backBuffer.style.left = Math.round(position.x - leftOffset) + '%';
-        backBuffer.style.top = Math.round(position.y - topOffset) + '%';
+        var leftOffset = this.map.layerContainerOriginPx.x;
+        var topOffset = this.map.layerContainerOriginPx.y;
+        backBuffer.style.left = Math.round(position.x - leftOffset) + 'px';
+        backBuffer.style.top = Math.round(position.y - topOffset) + 'px';
     },
 
     /**
@@ -765,19 +710,24 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
             backBuffer.id = this.div.id + '_bb';
             backBuffer.className = 'olBackBuffer';
             backBuffer.style.position = 'absolute';
-            backBuffer.style.width = '100%';
-            backBuffer.style.height = '100%';
+            var map = this.map;
+            backBuffer.style.zIndex = this.transitionEffect === 'resize' ?
+                    this.getZIndex() - 1 :
+                    // 'map-resize':
+                    map.Z_INDEX_BASE.BaseLayer -
+                            (map.getNumLayers() - map.getLayerIndex(this));
             for(var i=0, lenI=this.grid.length; i<lenI; i++) {
                 for(var j=0, lenJ=this.grid[i].length; j<lenJ; j++) {
-                    var tile = this.grid[i][j].createBackBuffer();
-                    if(!tile) {
-                        continue;
+                    var tile = this.grid[i][j],
+                        markup = this.grid[i][j].createBackBuffer();
+                    if (markup) {
+                        markup._i = i;
+                        markup._j = j;
+                        markup._w = tile.size.w;
+                        markup._h = tile.size.h;
+                        markup.id = tile.id + '_bb';
+                        backBuffer.appendChild(markup);
                     }
-                    // to be able to correctly position the back buffer we
-                    // place the tiles grid at (0, 0) in the back buffer
-                    tile.style.top = (i * this.tileSize.h) + '%';
-                    tile.style.left = (j * this.tileSize.w) + '%';
-                    backBuffer.appendChild(tile);
                 }
             }
         }
@@ -789,8 +739,17 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * Remove back buffer from DOM.
      */
     removeBackBuffer: function() {
+        if (this._transitionElement) {
+            for (var i=this.transitionendEvents.length-1; i>=0; --i) {
+                OpenLayers.Event.stopObserving(this._transitionElement,
+                    this.transitionendEvents[i], this._removeBackBuffer);
+            }
+            delete this._transitionElement;
+        }
         if(this.backBuffer) {
-            this.div.removeChild(this.backBuffer);
+            if (this.backBuffer.parentNode) {
+                this.backBuffer.parentNode.removeChild(this.backBuffer);
+            }
             this.backBuffer = null;
             this.backBufferResolution = null;
             if(this.backBufferTimerId !== null) {
@@ -825,8 +784,8 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     setTileSize: function(size) { 
         if (this.singleTile) {
             size = this.map.getSize();
-            size.h = parseInt(size.h * this.ratio);
-            size.w = parseInt(size.w * this.ratio);
+            size.h = parseInt(size.h * this.ratio, 10);
+            size.w = parseInt(size.w * this.ratio, 10);
         } 
         OpenLayers.Layer.HTTPRequest.prototype.setTileSize.apply(this, [size]);
     },
@@ -864,7 +823,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * bounds - {<OpenLayers.Bounds>}
      */
     initSingleTile: function(bounds) {
-        this.clearTileQueue();
+        this.events.triggerEvent("retile");
 
         //determine new tile bounds
         var center = bounds.getCenterLonLat();
@@ -916,8 +875,8 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * resolution - {Number}
      *
      * Returns:
-     * {Object} containing properties tilelon, tilelat, tileoffsetlat,
-     * tileoffsetlat, tileoffsetx, tileoffsety
+     * {Object} Object containing properties tilelon, tilelat, startcol,
+     * startrow
      */
     calculateGridLayout: function(bounds, origin, resolution) {
         var tilelon = resolution * this.tileSize.w;
@@ -925,20 +884,15 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
         
         var offsetlon = bounds.left - origin.lon;
         var tilecol = Math.floor(offsetlon/tilelon) - this.buffer;
-        var tilecolremain = offsetlon/tilelon - tilecol;
-        var tileoffsetx = -tilecolremain * this.tileSize.w;
-        var tileoffsetlon = origin.lon + tilecol * tilelon;
         
-        var offsetlat = bounds.top - (origin.lat + tilelat);  
-        var tilerow = Math.ceil(offsetlat/tilelat) + this.buffer;
-        var tilerowremain = tilerow - offsetlat/tilelat;
-        var tileoffsety = -tilerowremain * this.tileSize.h;
-        var tileoffsetlat = origin.lat + tilerow * tilelat;
+        var rowSign = this.rowSign;
+
+        var offsetlat = rowSign * (origin.lat - bounds.top + tilelat);  
+        var tilerow = Math[~rowSign ? 'floor' : 'ceil'](offsetlat/tilelat) - this.buffer * rowSign;
         
         return { 
           tilelon: tilelon, tilelat: tilelat,
-          tileoffsetlon: tileoffsetlon, tileoffsetlat: tileoffsetlat,
-          tileoffsetx: tileoffsetx, tileoffsety: tileoffsety
+          startcol: tilecol, startrow: tilerow
         };
 
     },
@@ -970,72 +924,92 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     },
 
     /**
+     * Method: getTileBoundsForGridIndex
+     *
+     * Parameters:
+     * row - {Number} The row of the grid
+     * col - {Number} The column of the grid
+     *
+     * Returns:
+     * {<OpenLayers.Bounds>} The bounds for the tile at (row, col)
+     */
+    getTileBoundsForGridIndex: function(row, col) {
+        var origin = this.getTileOrigin();
+        var tileLayout = this.gridLayout;
+        var tilelon = tileLayout.tilelon;
+        var tilelat = tileLayout.tilelat;
+        var startcol = tileLayout.startcol;
+        var startrow = tileLayout.startrow;
+        var rowSign = this.rowSign;
+        return new OpenLayers.Bounds(
+            origin.lon + (startcol + col) * tilelon,
+            origin.lat - (startrow + row * rowSign) * tilelat * rowSign,
+            origin.lon + (startcol + col + 1) * tilelon,
+            origin.lat - (startrow + (row - 1) * rowSign) * tilelat * rowSign
+        );
+    },
+
+    /**
      * Method: initGriddedTiles
      * 
      * Parameters:
      * bounds - {<OpenLayers.Bounds>}
      */
     initGriddedTiles:function(bounds) {
-        this.clearTileQueue();
+        this.events.triggerEvent("retile");
 
         // work out mininum number of rows and columns; this is the number of
         // tiles required to cover the viewport plus at least one for panning
 
         var viewSize = this.map.getSize();
-        var minRows = Math.ceil(viewSize.h/this.tileSize.h) + 
-                      Math.max(1, 2 * this.buffer);
-        var minCols = Math.ceil(viewSize.w/this.tileSize.w) +
-                      Math.max(1, 2 * this.buffer);
         
         var origin = this.getTileOrigin();
-        var resolution = this.getServerResolution();
-        
-        var tileLayout = this.calculateGridLayout(bounds, origin, resolution);
+        var resolution = this.map.getResolution(),
+            serverResolution = this.getServerResolution(),
+            ratio = resolution / serverResolution,
+            tileSize = {
+                w: this.tileSize.w / ratio,
+                h: this.tileSize.h / ratio
+            };
 
-        var tileoffsetx = Math.round(tileLayout.tileoffsetx); // heaven help us
-        var tileoffsety = Math.round(tileLayout.tileoffsety);
+        var minRows = Math.ceil(viewSize.h/tileSize.h) + 
+                      2 * this.buffer + 1;
+        var minCols = Math.ceil(viewSize.w/tileSize.w) +
+                      2 * this.buffer + 1;
 
-        var tileoffsetlon = tileLayout.tileoffsetlon;
-        var tileoffsetlat = tileLayout.tileoffsetlat;
+        var tileLayout = this.calculateGridLayout(bounds, origin, serverResolution);
+        this.gridLayout = tileLayout;
         
         var tilelon = tileLayout.tilelon;
         var tilelat = tileLayout.tilelat;
-
-        var startX = tileoffsetx; 
-        var startLon = tileoffsetlon;
-
-        var rowidx = 0;
         
-        var layerContainerDivLeft = parseInt(this.map.layerContainerDiv.style.left);
-        var layerContainerDivTop = parseInt(this.map.layerContainerDiv.style.top);
+        var layerContainerDivLeft = this.map.layerContainerOriginPx.x;
+        var layerContainerDivTop = this.map.layerContainerOriginPx.y;
+
+        var tileBounds = this.getTileBoundsForGridIndex(0, 0);
+        var startPx = this.map.getViewPortPxFromLonLat(
+            new OpenLayers.LonLat(tileBounds.left, tileBounds.top)
+        );
+        startPx.x = Math.round(startPx.x) - layerContainerDivLeft;
+        startPx.y = Math.round(startPx.y) - layerContainerDivTop;
 
         var tileData = [], center = this.map.getCenter();
+
+        var rowidx = 0;
         do {
-            var row = this.grid[rowidx++];
+            var row = this.grid[rowidx];
             if (!row) {
                 row = [];
                 this.grid.push(row);
             }
-
-            tileoffsetlon = startLon;
-            tileoffsetx = startX;
+            
             var colidx = 0;
- 
             do {
-                var tileBounds = 
-                    new OpenLayers.Bounds(tileoffsetlon, 
-                                          tileoffsetlat, 
-                                          tileoffsetlon + tilelon,
-                                          tileoffsetlat + tilelat);
-
-                var x = tileoffsetx;
-                x -= layerContainerDivLeft;
-
-                var y = tileoffsety;
-                y -= layerContainerDivTop;
-
-                var px = new OpenLayers.Pixel(x, y);
-                var tile = row[colidx++];
+                tileBounds = this.getTileBoundsForGridIndex(rowidx, colidx);
+                var px = startPx.clone();
+                px.x = px.x + colidx * Math.round(tileSize.w);
+                px.y = px.y + rowidx * Math.round(tileSize.h);
+                var tile = row[colidx];
                 if (!tile) {
                     tile = this.addTile(tileBounds, px);
                     this.addTileMonitoringHooks(tile);
@@ -1050,21 +1024,20 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
                         Math.pow(tileCenter.lat - center.lat, 2)
                 });
      
-                tileoffsetlon += tilelon;       
-                tileoffsetx += this.tileSize.w;
-            } while ((tileoffsetlon <= bounds.right + tilelon * this.buffer)
+                colidx += 1;
+            } while ((tileBounds.right <= bounds.right + tilelon * this.buffer)
                      || colidx < minCols);
              
-            tileoffsetlat -= tilelat;
-            tileoffsety += this.tileSize.h;
-        } while((tileoffsetlat >= bounds.bottom - tilelat * this.buffer)
+            rowidx += 1;
+        } while((tileBounds.bottom >= bounds.bottom - tilelat * this.buffer)
                 || rowidx < minRows);
         
         //shave off exceess rows and colums
         this.removeExcessTiles(rowidx, colidx);
 
+        var resolution = this.getServerResolution();
         // store the resolution of the grid
-        this.gridResolution = this.getServerResolution();
+        this.gridResolution = resolution;
 
         //now actually draw the tiles
         tileData.sort(function(a, b) {
@@ -1102,7 +1075,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
         var tile = new this.tileClass(
             this, position, bounds, null, this.tileSize, this.tileOptions
         );
-        tile.events.register("beforedraw", this, this.queueTileDraw);
+        this.events.triggerEvent("addtile", {tile: tile});
         return tile;
     },
     
@@ -1116,6 +1089,8 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      */
     addTileMonitoringHooks: function(tile) {
         
+        var replacingCls = 'olTileReplacing';
+
         tile.onLoadStart = function() {
             //if that was first tile then trigger a 'loadstart' on the layer
             if (this.loading === false) {
@@ -1124,23 +1099,53 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
             }
             this.events.triggerEvent("tileloadstart", {tile: tile});
             this.numLoadingTiles++;
+            if (!this.singleTile && this.backBuffer && this.gridResolution === this.backBufferResolution) {
+                OpenLayers.Element.addClass(tile.getTile(), replacingCls);
+            }
         };
       
-        tile.onLoadEnd = function() {
+        tile.onLoadEnd = function(evt) {
             this.numLoadingTiles--;
-            this.events.triggerEvent("tileloaded", {tile: tile});
+            var aborted = evt.type === 'unload';
+            this.events.triggerEvent("tileloaded", {
+                tile: tile,
+                aborted: aborted
+            });
+            if (!this.singleTile && !aborted && this.backBuffer && this.gridResolution === this.backBufferResolution) {
+                var tileDiv = tile.getTile();
+                if (OpenLayers.Element.getStyle(tileDiv, 'display') === 'none') {
+                    var bufferTile = document.getElementById(tile.id + '_bb');
+                    if (bufferTile) {
+                        bufferTile.parentNode.removeChild(bufferTile);
+                    }
+                }
+                OpenLayers.Element.removeClass(tileDiv, replacingCls);
+            }
             //if that was the last tile, then trigger a 'loadend' on the layer
-            if (this.tileQueue.length === 0 && this.numLoadingTiles === 0) {
+            if (this.numLoadingTiles === 0) {
+                if (this.backBuffer) {
+                    if (this.backBuffer.childNodes.length === 0) {
+                        // no tiles transitioning, remove immediately
+                        this.removeBackBuffer();
+                    } else {
+                        // wait until transition has ended or delay has passed
+                        this._transitionElement = aborted ?
+                            this.div.lastChild : tile.imgDiv;
+                        var transitionendEvents = this.transitionendEvents;
+                        for (var i=transitionendEvents.length-1; i>=0; --i) {
+                            OpenLayers.Event.observe(this._transitionElement,
+                                transitionendEvents[i],
+                                this._removeBackBuffer);
+                        }
+                        // the removal of the back buffer is delayed to prevent
+                        // flash effects due to the animation of tile displaying
+                        this.backBufferTimerId = window.setTimeout(
+                            this._removeBackBuffer, this.removeBackBufferDelay
+                        );
+                    }
+                }
                 this.loading = false;
                 this.events.triggerEvent("loadend");
-                if(this.backBuffer) {
-                    // the removal of the back buffer is delayed to prevent flash
-                    // effects due to the animation of tile displaying
-                    this.backBufferTimerId = window.setTimeout(
-                        OpenLayers.Function.bind(this.removeBackBuffer, this),
-                        this.removeBackBufferDelay
-                    );
-                }
             }
         };
         
@@ -1178,44 +1183,30 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
     
     /**
      * Method: moveGriddedTiles
-     *
-     * Parameter:
-     * deferred - {Boolean} true if this is a deferred call that should not
-     * be delayed.
      */
-    moveGriddedTiles: function(deferred) {
-        if (!deferred && !OpenLayers.Animation.isNative) {
-            if (this.moveTimerId != null) {
-                window.clearTimeout(this.moveTimerId);
-            }
-            this.moveTimerId = window.setTimeout(
-                this.deferMoveGriddedTiles, this.tileLoadingDelay
-            );
-            return;
-        }
-        var buffer = this.buffer || 1;
-        var scale = this.getResolutionScale();
+    moveGriddedTiles: function() {
+        var buffer = this.buffer + 1;
         while(true) {
+            var tlTile = this.grid[0][0];
             var tlViewPort = {
-                x: (this.grid[0][0].position.x * scale) +
-                    parseInt(this.div.style.left, 10) +
-                    parseInt(this.map.layerContainerDiv.style.left),
-                y: (this.grid[0][0].position.y * scale) +
-                    parseInt(this.div.style.top, 10) +
-                    parseInt(this.map.layerContainerDiv.style.top)
+                x: tlTile.position.x +
+                    this.map.layerContainerOriginPx.x,
+                y: tlTile.position.y +
+                    this.map.layerContainerOriginPx.y
             };
+            var ratio = this.getServerResolution() / this.map.getResolution();
             var tileSize = {
-                w: this.tileSize.w * scale,
-                h: this.tileSize.h * scale
+                w: Math.round(this.tileSize.w * ratio),
+                h: Math.round(this.tileSize.h * ratio)
             };
             if (tlViewPort.x > -tileSize.w * (buffer - 1)) {
-                this.shiftColumn(true);
+                this.shiftColumn(true, tileSize);
             } else if (tlViewPort.x < -tileSize.w * buffer) {
-                this.shiftColumn(false);
+                this.shiftColumn(false, tileSize);
             } else if (tlViewPort.y > -tileSize.h * (buffer - 1)) {
-                this.shiftRow(true);
+                this.shiftRow(true, tileSize);
             } else if (tlViewPort.y < -tileSize.h * buffer) {
-                this.shiftRow(false);
+                this.shiftRow(false, tileSize);
             } else {
                 break;
             }
@@ -1229,33 +1220,25 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * Parameters:
      * prepend - {Boolean} if true, prepend to beginning.
      *                          if false, then append to end
+     * tileSize - {Object} rendered tile size; object with w and h properties
      */
-    shiftRow:function(prepend) {
-        var modelRowIndex = (prepend) ? 0 : (this.grid.length - 1);
+    shiftRow: function(prepend, tileSize) {
         var grid = this.grid;
-        var modelRow = grid[modelRowIndex];
-
-        var resolution = this.getServerResolution();
-        var deltaY = (prepend) ? -this.tileSize.h : this.tileSize.h;
-        var deltaLat = resolution * -deltaY;
-
-        var row = (prepend) ? grid.pop() : grid.shift();
-
-        for (var i=0, len=modelRow.length; i<len; i++) {
-            var modelTile = modelRow[i];
-            var bounds = modelTile.bounds.clone();
-            var position = modelTile.position.clone();
-            bounds.bottom = bounds.bottom + deltaLat;
-            bounds.top = bounds.top + deltaLat;
-            position.y = position.y + deltaY;
-            row[i].moveTo(bounds, position);
-        }
-
-        if (prepend) {
-            grid.unshift(row);
-        } else {
-            grid.push(row);
+        var rowIndex = prepend ? 0 : (grid.length - 1);
+        var sign = prepend ? -1 : 1;
+        var rowSign = this.rowSign;
+        var tileLayout = this.gridLayout;
+        tileLayout.startrow += sign * rowSign;
+
+        var modelRow = grid[rowIndex];
+        var row = grid[prepend ? 'pop' : 'shift']();
+        for (var i=0, len=row.length; i<len; i++) {
+            var tile = row[i];
+            var position = modelRow[i].position.clone();
+            position.y += tileSize.h * sign;
+            tile.moveTo(this.getTileBoundsForGridIndex(rowIndex, i), position);
         }
+        grid[prepend ? 'unshift' : 'push'](row);
     },
 
     /**
@@ -1265,30 +1248,22 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
      * Parameters:
      * prepend - {Boolean} if true, prepend to beginning.
      *                          if false, then append to end
+     * tileSize - {Object} rendered tile size; object with w and h properties
      */
-    shiftColumn: function(prepend) {
-        var deltaX = (prepend) ? -this.tileSize.w : this.tileSize.w;
-        var resolution = this.getServerResolution();
-        var deltaLon = resolution * deltaX;
-
-        for (var i=0, len=this.grid.length; i<len; i++) {
-            var row = this.grid[i];
-            var modelTileIndex = (prepend) ? 0 : (row.length - 1);
-            var modelTile = row[modelTileIndex];
-            
-            var bounds = modelTile.bounds.clone();
-            var position = modelTile.position.clone();
-            bounds.left = bounds.left + deltaLon;
-            bounds.right = bounds.right + deltaLon;
-            position.x = position.x + deltaX;
-
-            var tile = prepend ? this.grid[i].pop() : this.grid[i].shift();
-            tile.moveTo(bounds, position);
-            if (prepend) {
-                row.unshift(tile);
-            } else {
-                row.push(tile);
-            }
+    shiftColumn: function(prepend, tileSize) {
+        var grid = this.grid;
+        var colIndex = prepend ? 0 : (grid[0].length - 1);
+        var sign = prepend ? -1 : 1;
+        var tileLayout = this.gridLayout;
+        tileLayout.startcol += sign;
+
+        for (var i=0, len=grid.length; i<len; i++) {
+            var row = grid[i];
+            var position = row[colIndex].position.clone();
+            var tile = row[prepend ? 'pop' : 'shift']();            
+            position.x += tileSize.w * sign;
+            tile.moveTo(this.getTileBoundsForGridIndex(i, colIndex), position);
+            row[prepend ? 'unshift' : 'push'](tile);
         }
     },
 
diff --git a/lib/OpenLayers/Layer/HTTPRequest.js b/lib/OpenLayers/Layer/HTTPRequest.js
index 9483e49..ccb0291 100644
--- a/lib/OpenLayers/Layer/HTTPRequest.js
+++ b/lib/OpenLayers/Layer/HTTPRequest.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/Image.js b/lib/OpenLayers/Layer/Image.js
index d46a517..b96e369 100644
--- a/lib/OpenLayers/Layer/Image.js
+++ b/lib/OpenLayers/Layer/Image.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/KaMap.js b/lib/OpenLayers/Layer/KaMap.js
index 5018d9a..3de2224 100644
--- a/lib/OpenLayers/Layer/KaMap.js
+++ b/lib/OpenLayers/Layer/KaMap.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -92,8 +92,8 @@ OpenLayers.Layer.KaMap = OpenLayers.Class(OpenLayers.Layer.Grid, {
      * resolution - {Number}
      *
      * Returns:
-     * {Object} Object containing properties tilelon, tilelat, tileoffsetlat,
-     * tileoffsetlat, tileoffsetx, tileoffsety
+     * {Object} Object containing properties tilelon, tilelat, startcol,
+     * startrow
      */
     calculateGridLayout: function(bounds, origin, resolution) {
         var tilelon = resolution*this.tileSize.w;
@@ -101,24 +101,40 @@ OpenLayers.Layer.KaMap = OpenLayers.Class(OpenLayers.Layer.Grid, {
         
         var offsetlon = bounds.left;
         var tilecol = Math.floor(offsetlon/tilelon) - this.buffer;
-        var tilecolremain = offsetlon/tilelon - tilecol;
-        var tileoffsetx = -tilecolremain * this.tileSize.w;
-        var tileoffsetlon = tilecol * tilelon;
         
         var offsetlat = bounds.top;  
-        var tilerow = Math.ceil(offsetlat/tilelat) + this.buffer;
-        var tilerowremain = tilerow - offsetlat/tilelat;
-        var tileoffsety = -(tilerowremain+1) * this.tileSize.h;
-        var tileoffsetlat = tilerow * tilelat;
+        var tilerow = Math.floor(offsetlat/tilelat) + this.buffer;
         
         return { 
           tilelon: tilelon, tilelat: tilelat,
-          tileoffsetlon: tileoffsetlon, tileoffsetlat: tileoffsetlat,
-          tileoffsetx: tileoffsetx, tileoffsety: tileoffsety
+          startcol: tilecol, startrow: tilerow
         };
     },    
 
     /**
+     * Method: getTileBoundsForGridIndex
+     *
+     * Parameters:
+     * row - {Number} The row of the grid
+     * col - {Number} The column of the grid
+     *
+     * Returns:
+     * {<OpenLayers.Bounds>} The bounds for the tile at (row, col)
+     */
+    getTileBoundsForGridIndex: function(row, col) {
+        var origin = this.getTileOrigin();
+        var tileLayout = this.gridLayout;
+        var tilelon = tileLayout.tilelon;
+        var tilelat = tileLayout.tilelat;
+        var minX = (tileLayout.startcol + col) * tilelon;
+        var minY = (tileLayout.startrow - row) * tilelat;
+        return new OpenLayers.Bounds(
+            minX, minY,
+            minX + tilelon, minY + tilelat
+        );
+    },
+
+    /**
      * APIMethod: clone
      * 
      * Parameters: 
diff --git a/lib/OpenLayers/Layer/KaMapCache.js b/lib/OpenLayers/Layer/KaMapCache.js
index 5656a0f..be6bdb0 100644
--- a/lib/OpenLayers/Layer/KaMapCache.js
+++ b/lib/OpenLayers/Layer/KaMapCache.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/MapGuide.js b/lib/OpenLayers/Layer/MapGuide.js
index ed68861..8f7d979 100644
--- a/lib/OpenLayers/Layer/MapGuide.js
+++ b/lib/OpenLayers/Layer/MapGuide.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -108,7 +108,7 @@ OpenLayers.Layer.MapGuide = OpenLayers.Class(OpenLayers.Layer.Grid, {
         tileRowsPerFolder: 30,
         format: 'png',
         querystring: null
-    },	
+    },
 
     /** 
      * Property: defaultSize
@@ -294,13 +294,13 @@ OpenLayers.Layer.MapGuide = OpenLayers.Class(OpenLayers.Layer.Grid, {
           rowidx = Math.round(rowidx/this.tileSize.h);
 
           if (this.useHttpTile){
-	          url = this.getImageFilePath(
+              url = this.getImageFilePath(
                    {
                        tilecol: colidx,
                        tilerow: rowidx,
                        scaleindex: this.resolutions.length - this.map.zoom - 1
                     });
-		  
+
           } else {
             url = this.getFullRequestString(
                    {
@@ -421,7 +421,7 @@ OpenLayers.Layer.MapGuide = OpenLayers.Class(OpenLayers.Layer.Grid, {
           tileColGroup += '0';
         } else {
           tileColGroup += Math.floor(Math.abs(newParams.tilecol/this.params.tileColumnsPerFolder)) * this.params.tileColumnsPerFolder;
-        }					
+        }
         
         var tilePath = '/S' + Math.floor(newParams.scaleindex)
                 + '/' + this.params.basemaplayergroupname
@@ -439,41 +439,5 @@ OpenLayers.Layer.MapGuide = OpenLayers.Class(OpenLayers.Layer.Grid, {
         return requestString;
     },
     
-    /** 
-     * Method: calculateGridLayout
-     * Generate parameters for the grid layout. This  
-     *
-     * Parameters:
-     * bounds - {<OpenLayers.Bound>}
-     * origin - {<OpenLayers.LonLat>}
-     * resolution - {Number}
-     *
-     * Returns:
-     * {Object} Object containing properties tilelon, tilelat, tileoffsetlat,
-     * tileoffsetlat, tileoffsetx, tileoffsety
-     */
-    calculateGridLayout: function(bounds, origin, resolution) {
-        var tilelon = resolution * this.tileSize.w;
-        var tilelat = resolution * this.tileSize.h;
-        
-        var offsetlon = bounds.left - origin.lon;
-        var tilecol = Math.floor(offsetlon/tilelon) - this.buffer;
-        var tilecolremain = offsetlon/tilelon - tilecol;
-        var tileoffsetx = -tilecolremain * this.tileSize.w;
-        var tileoffsetlon = origin.lon + tilecol * tilelon;
-        
-        var offsetlat = origin.lat - bounds.top + tilelat; 
-        var tilerow = Math.floor(offsetlat/tilelat) - this.buffer;
-        var tilerowremain = tilerow - offsetlat/tilelat;
-        var tileoffsety = tilerowremain * this.tileSize.h;
-        var tileoffsetlat = origin.lat - tilelat*tilerow;
-        
-        return { 
-          tilelon: tilelon, tilelat: tilelat,
-          tileoffsetlon: tileoffsetlon, tileoffsetlat: tileoffsetlat,
-          tileoffsetx: tileoffsetx, tileoffsety: tileoffsety
-        };
-    },
-    
     CLASS_NAME: "OpenLayers.Layer.MapGuide"
 });
diff --git a/lib/OpenLayers/Layer/MapServer.js b/lib/OpenLayers/Layer/MapServer.js
index 8f86c8f..713035f 100644
--- a/lib/OpenLayers/Layer/MapServer.js
+++ b/lib/OpenLayers/Layer/MapServer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/Markers.js b/lib/OpenLayers/Layer/Markers.js
index 78ca09d..de848d4 100644
--- a/lib/OpenLayers/Layer/Markers.js
+++ b/lib/OpenLayers/Layer/Markers.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/OSM.js b/lib/OpenLayers/Layer/OSM.js
index 005e7ec..49150fd 100644
--- a/lib/OpenLayers/Layer/OSM.js
+++ b/lib/OpenLayers/Layer/OSM.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -57,7 +57,7 @@ OpenLayers.Layer.OSM = OpenLayers.Class(OpenLayers.Layer.XYZ, {
      * Property: attribution
      * {String} The layer attribution.
      */
-    attribution: "Data CC-By-SA by <a href='http://openstreetmap.org/'>OpenStreetMap</a>",
+    attribution: "© <a href='http://www.openstreetmap.org/copyright'>OpenStreetMap</a> contributors",
 
     /**
      * Property: sphericalMercator
diff --git a/lib/OpenLayers/Layer/PointGrid.js b/lib/OpenLayers/Layer/PointGrid.js
index 8e7ce29..10a4d02 100644
--- a/lib/OpenLayers/Layer/PointGrid.js
+++ b/lib/OpenLayers/Layer/PointGrid.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/PointTrack.js b/lib/OpenLayers/Layer/PointTrack.js
index c89da78..accfac7 100644
--- a/lib/OpenLayers/Layer/PointTrack.js
+++ b/lib/OpenLayers/Layer/PointTrack.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/SphericalMercator.js b/lib/OpenLayers/Layer/SphericalMercator.js
index 25defc5..60bb2fe 100644
--- a/lib/OpenLayers/Layer/SphericalMercator.js
+++ b/lib/OpenLayers/Layer/SphericalMercator.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/TMS.js b/lib/OpenLayers/Layer/TMS.js
index da879b1..ab76847 100644
--- a/lib/OpenLayers/Layer/TMS.js
+++ b/lib/OpenLayers/Layer/TMS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/Text.js b/lib/OpenLayers/Layer/Text.js
index 2e08180..4a4c9e3 100644
--- a/lib/OpenLayers/Layer/Text.js
+++ b/lib/OpenLayers/Layer/Text.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/TileCache.js b/lib/OpenLayers/Layer/TileCache.js
index e4e92e9..5b336be 100644
--- a/lib/OpenLayers/Layer/TileCache.js
+++ b/lib/OpenLayers/Layer/TileCache.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -116,31 +116,16 @@ OpenLayers.Layer.TileCache = OpenLayers.Class(OpenLayers.Layer.Grid, {
         var tileZ = this.serverResolutions != null ?
             OpenLayers.Util.indexOf(this.serverResolutions, res) :
             this.map.getZoom();
-        /**
-         * Zero-pad a positive integer.
-         * number - {Int} 
-         * length - {Int} 
-         *
-         * Returns:
-         * {String} A zero-padded string
-         */
-        function zeroPad(number, length) {
-            number = String(number);
-            var zeros = [];
-            for(var i=0; i<length; ++i) {
-                zeros.push('0');
-            }
-            return zeros.join('').substring(0, length - number.length) + number;
-        }
+
         var components = [
             this.layername,
-            zeroPad(tileZ, 2),
-            zeroPad(parseInt(tileX / 1000000), 3),
-            zeroPad((parseInt(tileX / 1000) % 1000), 3),
-            zeroPad((parseInt(tileX) % 1000), 3),
-            zeroPad(parseInt(tileY / 1000000), 3),
-            zeroPad((parseInt(tileY / 1000) % 1000), 3),
-            zeroPad((parseInt(tileY) % 1000), 3) + '.' + this.extension
+            OpenLayers.Number.zeroPad(tileZ, 2),
+            OpenLayers.Number.zeroPad(parseInt(tileX / 1000000), 3),
+            OpenLayers.Number.zeroPad((parseInt(tileX / 1000) % 1000), 3),
+            OpenLayers.Number.zeroPad((parseInt(tileX) % 1000), 3),
+            OpenLayers.Number.zeroPad(parseInt(tileY / 1000000), 3),
+            OpenLayers.Number.zeroPad((parseInt(tileY / 1000) % 1000), 3),
+            OpenLayers.Number.zeroPad((parseInt(tileY) % 1000), 3) + '.' + this.extension
         ];
         var path = components.join('/'); 
         var url = this.url;
diff --git a/lib/OpenLayers/Layer/UTFGrid.js b/lib/OpenLayers/Layer/UTFGrid.js
index 587047b..878cb4b 100644
--- a/lib/OpenLayers/Layer/UTFGrid.js
+++ b/lib/OpenLayers/Layer/UTFGrid.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -13,7 +13,7 @@
  * This Layer reads from UTFGrid tiled data sources.  Since UTFGrids are 
  * essentially JSON-based ASCII art with attached attributes, they are not 
  * visibly rendered.  In order to use them in the map, you must add a 
- * <OpenLayers.Control.UTFGrid> ontrol as well.
+ * <OpenLayers.Control.UTFGrid> control as well.
  *
  * Example:
  *
@@ -42,7 +42,7 @@ OpenLayers.Layer.UTFGrid = OpenLayers.Class(OpenLayers.Layer.XYZ, {
     
     /**
      * APIProperty: isBaseLayer
-     * Default is true, as this is designed to be a base tile source. 
+     * Default is false, as UTFGrids are designed to be a transparent overlay layer. 
      */
     isBaseLayer: false,
     
@@ -109,6 +109,12 @@ OpenLayers.Layer.UTFGrid = OpenLayers.Class(OpenLayers.Layer.XYZ, {
             utfgridResolution: this.utfgridResolution
         }, this.tileOptions);
     },
+
+    /**
+     * Method: createBackBuffer
+     * The UTFGrid cannot create a back buffer, so this method is overriden.
+     */
+    createBackBuffer: function() {},
     
     /**
      * APIMethod: clone
@@ -148,7 +154,7 @@ OpenLayers.Layer.UTFGrid = OpenLayers.Class(OpenLayers.Layer.XYZ, {
     getFeatureInfo: function(location) {
         var info = null;
         var tileInfo = this.getTileData(location);
-        if (tileInfo.tile) {
+        if (tileInfo && tileInfo.tile) {
             info = tileInfo.tile.getFeatureInfo(tileInfo.i, tileInfo.j);
         }
         return info;
diff --git a/lib/OpenLayers/Layer/Vector.js b/lib/OpenLayers/Layer/Vector.js
index ed2271a..4ef4cbf 100644
--- a/lib/OpenLayers/Layer/Vector.js
+++ b/lib/OpenLayers/Layer/Vector.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -123,7 +123,8 @@ OpenLayers.Layer.Vector = OpenLayers.Class(OpenLayers.Layer, {
     /** 
      * APIProperty: isFixed
      * {Boolean} Whether the layer remains in one place while dragging the
-     * map.
+     * map. Note that setting this to true will move the layer to the bottom
+     * of the layer stack.
      */
     isFixed: false,
 
@@ -482,9 +483,9 @@ OpenLayers.Layer.Vector = OpenLayers.Class(OpenLayers.Layer, {
                 viewHeight = viewSize.h,
                 offsetLeft = (viewWidth / 2 * this.ratio) - viewWidth / 2,
                 offsetTop = (viewHeight / 2 * this.ratio) - viewHeight / 2;
-            offsetLeft += parseInt(this.map.layerContainerDiv.style.left, 10);
+            offsetLeft += this.map.layerContainerOriginPx.x;
             offsetLeft = -Math.round(offsetLeft);
-            offsetTop += parseInt(this.map.layerContainerDiv.style.top, 10);
+            offsetTop += this.map.layerContainerOriginPx.y;
             offsetTop = -Math.round(offsetTop);
 
             this.div.style.left = offsetLeft + 'px';
diff --git a/lib/OpenLayers/Layer/Vector/RootContainer.js b/lib/OpenLayers/Layer/Vector/RootContainer.js
index 1c146ee..075edaa 100644
--- a/lib/OpenLayers/Layer/Vector/RootContainer.js
+++ b/lib/OpenLayers/Layer/Vector/RootContainer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/WMS.js b/lib/OpenLayers/Layer/WMS.js
index 833e7b0..15dee2f 100644
--- a/lib/OpenLayers/Layer/WMS.js
+++ b/lib/OpenLayers/Layer/WMS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -177,7 +177,8 @@ OpenLayers.Layer.WMS = OpenLayers.Class(OpenLayers.Layer.Grid, {
     reverseAxisOrder: function() {
         var projCode = this.projection.getCode();
         return parseFloat(this.params.VERSION) >= 1.3 && 
-            !!(this.yx[projCode] || OpenLayers.Projection.defaults[projCode].yx);
+            !!(this.yx[projCode] || (OpenLayers.Projection.defaults[projCode] && 
+            OpenLayers.Projection.defaults[projCode].yx));
     },
     
     /**
diff --git a/lib/OpenLayers/Layer/WMTS.js b/lib/OpenLayers/Layer/WMTS.js
index bf4cc5a..9c41629 100644
--- a/lib/OpenLayers/Layer/WMTS.js
+++ b/lib/OpenLayers/Layer/WMTS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -106,6 +106,7 @@ OpenLayers.Layer.WMTS = OpenLayers.Class(OpenLayers.Layer.Grid, {
      * 
      * Matrix properties:
      * identifier - {String} The matrix identifier (required).
+     * scaleDenominator - {Number} The matrix scale denominator.
      * topLeftCorner - {<OpenLayers.LonLat>} The top left corner of the 
      *     matrix.  Must be provided if different than the layer <tileOrigin>.
      * tileWidth - {Number} The tile width for the matrix.  Must be provided 
@@ -263,7 +264,6 @@ OpenLayers.Layer.WMTS = OpenLayers.Class(OpenLayers.Layer.Grid, {
      */
     setMap: function() {
         OpenLayers.Layer.Grid.prototype.setMap.apply(this, arguments);
-        this.updateMatrixProperties();
     },
     
     /**
@@ -417,10 +417,19 @@ OpenLayers.Layer.WMTS = OpenLayers.Class(OpenLayers.Layer.Grid, {
             var matrixId = this.matrix.identifier;
             var dimensions = this.dimensions, params;
 
+            if (OpenLayers.Util.isArray(this.url)) {
+                url = this.selectUrl([
+                    this.version, this.style, this.matrixSet,
+                    this.matrix.identifier, info.row, info.col
+                ].join(","), this.url);
+            } else {
+                url = this.url;
+            }
+
             if (this.requestEncoding.toUpperCase() === "REST") {
                 params = this.params;
-                if (typeof this.url === "string" && this.url.indexOf("{") !== -1) {
-                    var template = this.url.replace(/\{/g, "${");
+                if (url.indexOf("{") !== -1) {
+                    var template = url.replace(/\{/g, "${");
                     var context = {
                         // spec does not make clear if capital S or not
                         style: this.style, Style: this.style,
@@ -454,11 +463,6 @@ OpenLayers.Layer.WMTS = OpenLayers.Class(OpenLayers.Layer.Grid, {
                     path = path + this.matrixSet + "/" + this.matrix.identifier + 
                         "/" + info.row + "/" + info.col + "." + this.formatSuffix;
 
-                    if (OpenLayers.Util.isArray(this.url)) {
-                        url = this.selectUrl(path, this.url);
-                    } else {
-                        url = this.url;
-                    }
                     if (!url.match(/\/$/)) {
                         url = url + "/";
                     }
diff --git a/lib/OpenLayers/Layer/WorldWind.js b/lib/OpenLayers/Layer/WorldWind.js
index 650e82d..8581289 100644
--- a/lib/OpenLayers/Layer/WorldWind.js
+++ b/lib/OpenLayers/Layer/WorldWind.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Layer/XYZ.js b/lib/OpenLayers/Layer/XYZ.js
index 504f093..5af5ce3 100644
--- a/lib/OpenLayers/Layer/XYZ.js
+++ b/lib/OpenLayers/Layer/XYZ.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -24,7 +24,7 @@ OpenLayers.Layer.XYZ = OpenLayers.Class(OpenLayers.Layer.Grid, {
     isBaseLayer: true,
     
     /**
-     * APIProperty: sphericalMecator
+     * APIProperty: sphericalMercator
      * Whether the tile extents should be set to the defaults for 
      *    spherical mercator. Useful for things like OpenStreetMap.
      *    Default is false, except for the OSM subclass.
diff --git a/lib/OpenLayers/Layer/Zoomify.js b/lib/OpenLayers/Layer/Zoomify.js
index 6179ccc..1c3d57d 100644
--- a/lib/OpenLayers/Layer/Zoomify.js
+++ b/lib/OpenLayers/Layer/Zoomify.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -105,6 +105,7 @@ OpenLayers.Layer.Zoomify = OpenLayers.Class(OpenLayers.Layer.Grid, {
     initializeZoomify: function( size ) {
 
         var imageSize = size.clone();
+        this.size = size.clone();
         var tiles = new OpenLayers.Size(
             Math.ceil( imageSize.w / this.standardTileSize ),
             Math.ceil( imageSize.h / this.standardTileSize )
@@ -132,14 +133,18 @@ OpenLayers.Layer.Zoomify = OpenLayers.Class(OpenLayers.Layer.Grid, {
         this.tierImageSize.reverse();
 
         this.numberOfTiers = this.tierSizeInTiles.length;
-
+        var resolutions = [1];
         this.tileCountUpToTier = [0];
         for (var i = 1; i < this.numberOfTiers; i++) {
+            resolutions.unshift(Math.pow(2, i));
             this.tileCountUpToTier.push(
                 this.tierSizeInTiles[i-1].w * this.tierSizeInTiles[i-1].h +
                 this.tileCountUpToTier[i-1]
                 );
         }
+        if (!this.serverResolutions) {
+            this.serverResolutions = resolutions;
+        }
     },
 
     /**
@@ -195,10 +200,10 @@ OpenLayers.Layer.Zoomify = OpenLayers.Class(OpenLayers.Layer.Grid, {
      */
     getURL: function (bounds) {
         bounds = this.adjustBounds(bounds);
-        var res = this.map.getResolution();
+        var res = this.getServerResolution();
         var x = Math.round((bounds.left - this.tileOrigin.lon) / (res * this.tileSize.w));
         var y = Math.round((this.tileOrigin.lat - bounds.top) / (res * this.tileSize.h));
-        var z = this.map.getZoom();
+        var z = this.getZoomForResolution( res );
 
         var tileIndex = x + y * this.tierSizeInTiles[z].w + this.tileCountUpToTier[z];
         var path = "TileGroup" + Math.floor( (tileIndex) / 256 ) +
@@ -219,10 +224,10 @@ OpenLayers.Layer.Zoomify = OpenLayers.Class(OpenLayers.Layer.Grid, {
     getImageSize: function() {
         if (arguments.length > 0) {
             var bounds = this.adjustBounds(arguments[0]);
-            var res = this.map.getResolution();
+            var res = this.getServerResolution();
             var x = Math.round((bounds.left - this.tileOrigin.lon) / (res * this.tileSize.w));
             var y = Math.round((this.tileOrigin.lat - bounds.top) / (res * this.tileSize.h));
-            var z = this.map.getZoom();
+            var z = this.getZoomForResolution( res );
             var w = this.standardTileSize;
             var h = this.standardTileSize;
             if (x == this.tierSizeInTiles[z].w -1 ) {
@@ -251,41 +256,5 @@ OpenLayers.Layer.Zoomify = OpenLayers.Class(OpenLayers.Layer.Grid, {
                                                 this.map.maxExtent.top);
     },
 
-    /**
-     * Method: calculateGridLayout
-     * Generate parameters for the grid layout. This
-     *
-     * Parameters:
-     * bounds - {<OpenLayers.Bound>}
-     * origin - {<OpenLayers.LonLat>}
-     * resolution - {Number}
-     *
-     * Returns:
-     * {Object} Object containing properties tilelon, tilelat, tileoffsetlat,
-     * tileoffsetlat, tileoffsetx, tileoffsety
-     */
-    calculateGridLayout: function(bounds, origin, resolution) {
-        var tilelon = resolution * this.tileSize.w;
-        var tilelat = resolution * this.tileSize.h;
-
-        var offsetlon = bounds.left - origin.lon;
-        var tilecol = Math.floor(offsetlon/tilelon) - this.buffer;
-        var tilecolremain = offsetlon/tilelon - tilecol;
-        var tileoffsetx = -tilecolremain * this.tileSize.w;
-        var tileoffsetlon = origin.lon + tilecol * tilelon;
-
-        var offsetlat = origin.lat - bounds.top + tilelat;
-        var tilerow = Math.floor(offsetlat/tilelat) - this.buffer;
-        var tilerowremain = tilerow - offsetlat/tilelat;
-        var tileoffsety = tilerowremain * this.tileSize.h;
-        var tileoffsetlat = origin.lat - tilelat*tilerow;
-
-        return {
-          tilelon: tilelon, tilelat: tilelat,
-          tileoffsetlon: tileoffsetlon, tileoffsetlat: tileoffsetlat,
-          tileoffsetx: tileoffsetx, tileoffsety: tileoffsety
-        };
-    },
-
     CLASS_NAME: "OpenLayers.Layer.Zoomify"
 });
diff --git a/lib/OpenLayers/Map.js b/lib/OpenLayers/Map.js
index f344a0b..56763fa 100644
--- a/lib/OpenLayers/Map.js
+++ b/lib/OpenLayers/Map.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -6,6 +6,7 @@
 /**
  * @requires OpenLayers/BaseTypes/Class.js
  * @requires OpenLayers/Util.js
+ * @requires OpenLayers/Util/vendorPrefix.js
  * @requires OpenLayers/Events.js
  * @requires OpenLayers/Tween.js
  * @requires OpenLayers/Projection.js
@@ -69,13 +70,16 @@ OpenLayers.Map = OpenLayers.Class({
      *     object will include a *layer* property that references the removed
      *     layer.
      * changelayer - triggered after a layer name change, order change,
-     *     opacity change, params change, visibility change (due to resolution
-     *     thresholds) or attribution change (due to extent change). Listeners
-     *     will receive an event object with *layer* and *property* properties.
-     *     The *layer* property will be a reference to the changed layer. The
-     *     *property* property will be a key to the changed property (name,
-     *     order, opacity, params, visibility or attribution).
-     * movestart - triggered after the start of a drag, pan, or zoom
+     *     opacity change, params change, visibility change (actual visibility,
+     *     not the layer's visibility property) or attribution change (due to
+     *     extent change). Listeners will receive an event object with *layer*
+     *     and *property* properties. The *layer* property will be a reference
+     *     to the changed layer. The *property* property will be a key to the
+     *     changed property (name, order, opacity, params, visibility or
+     *     attribution).
+     * movestart - triggered after the start of a drag, pan, or zoom. The event
+     *     object may include a *zoomChanged* property that tells whether the
+     *     zoom has changed.
      * move - triggered after each drag, pan, or zoom
      * moveend - triggered after a drag, pan, or zoom completes
      * zoomend - triggered after a zoom completes
@@ -83,6 +87,7 @@ OpenLayers.Map = OpenLayers.Class({
      * mouseout - triggered after mouseout the map
      * mousemove - triggered after mousemove the map
      * changebaselayer - triggered after the base layer changes
+     * updatesize - triggered after the <updateSize> method was executed
      */
 
     /**
@@ -312,12 +317,12 @@ OpenLayers.Map = OpenLayers.Class({
      * APIProperty: maxExtent
      * {<OpenLayers.Bounds>|Array} If provided as an array, the array
      *     should consist of four values (left, bottom, right, top).
-     *     The maximum extent for the map.  Defaults to the
-     *     whole world in decimal degrees (-180, -90, 180, 90).  Specify a 
-     *     different extent in the map options if you are not using a geographic
-     *     projection and displaying the whole  world. To restrict user panning
-     *     and zooming of the map, use <restrictedExtent> instead.  The value 
-     *     for <maxExtent> will change calculations for tile URLs.
+     *     The maximum extent for the map.
+     *     Default depends on projection; if this is one of those defined in OpenLayers.Projection.defaults
+     *     (EPSG:4326 or web mercator), maxExtent will be set to the value defined there;
+     *     else, defaults to null.
+     *     To restrict user panning and zooming of the map, use <restrictedExtent> instead.
+     *     The value for <maxExtent> will change calculations for tile URLs.
      */
     maxExtent: null,
     
@@ -369,19 +374,30 @@ OpenLayers.Map = OpenLayers.Class({
     displayProjection: null,
 
     /**
+     * APIProperty: tileManager
+     * {<OpenLayers.TileManager>|Object} By default, and if the build contains
+     * TileManager.js, the map will use the TileManager to queue image requests
+     * and to cache tile image elements. To create a map without a TileManager
+     * configure the map with tileManager: null. To create a TileManager with
+     * non-default options, supply the options instead or alternatively supply
+     * an instance of {<OpenLayers.TileManager>}.
+     */
+
+    /**
      * APIProperty: fallThrough
      * {Boolean} Should OpenLayers allow events on the map to fall through to
      *           other elements on the page, or should it swallow them? (#457)
-     *           Default is to fall through.
+     *           Default is to swallow.
      */
-    fallThrough: true,
-    
+    fallThrough: false,
+
     /**
-     * Property: panTween
-     * {<OpenLayers.Tween>} Animated panning tween object, see panTo()
+     * APIProperty: autoUpdateSize
+     * {Boolean} Should OpenLayers automatically update the size of the map
+     * when the resize event is fired. Default is true.
      */
-    panTween: null,
-
+    autoUpdateSize: true,
+    
     /**
      * APIProperty: eventListeners
      * {Object} If set as an option at construction, the eventListeners
@@ -392,6 +408,12 @@ OpenLayers.Map = OpenLayers.Class({
     eventListeners: null,
 
     /**
+     * Property: panTween
+     * {<OpenLayers.Tween>} Animated panning tween object, see panTo()
+     */
+    panTween: null,
+
+    /**
      * APIProperty: panMethod
      * {Function} The Easing function to be used for tweening.  Default is
      * OpenLayers.Easing.Expo.easeOut. Setting this to 'null' turns off
@@ -409,6 +431,28 @@ OpenLayers.Map = OpenLayers.Class({
     panDuration: 50,
     
     /**
+     * Property: zoomTween
+     * {<OpenLayers.Tween>} Animated zooming tween object, see zoomTo()
+     */
+    zoomTween: null,
+
+    /**
+     * APIProperty: zoomMethod
+     * {Function} The Easing function to be used for tweening.  Default is
+     * OpenLayers.Easing.Quad.easeOut. Setting this to 'null' turns off
+     * animated zooming.
+     */
+    zoomMethod: OpenLayers.Easing.Quad.easeOut,
+    
+    /**
+     * Property: zoomDuration
+     * {Integer} The number of steps to be passed to the
+     * OpenLayers.Tween.start() method when the map is zoomed.
+     * Default is 20.
+     */
+    zoomDuration: 20,
+    
+    /**
      * Property: paddingForPopups
      * {<OpenLayers.Bounds>} Outside margin of the popup. Used to prevent 
      *     the popup from getting too close to the map border.
@@ -416,6 +460,12 @@ OpenLayers.Map = OpenLayers.Class({
     paddingForPopups : null,
     
     /**
+     * Property: layerContainerOriginPx
+     * {Object} Cached object representing the layer container origin (in pixels).
+     */
+    layerContainerOriginPx: null,
+    
+    /**
      * Property: minPx
      * {Object} An object with a 'x' and 'y' values that is the lower
      *     left of maxExtent in viewport pixel space.
@@ -563,13 +613,20 @@ OpenLayers.Map = OpenLayers.Class({
             this, this.viewPortDiv, null, this.fallThrough, 
             {includeXY: true}
         );
+        
+        if (OpenLayers.TileManager && this.tileManager !== null) {
+            if (!(this.tileManager instanceof OpenLayers.TileManager)) {
+                this.tileManager = new OpenLayers.TileManager(this.tileManager);
+            }
+            this.tileManager.addMap(this);
+        }
 
         // the layerContainerDiv is the one that holds all the layers
         id = this.id + "_OpenLayers_Container";
         this.layerContainerDiv = OpenLayers.Util.createDiv(id);
-        this.layerContainerDiv.style.width = '100px';
-        this.layerContainerDiv.style.height = '100px';
         this.layerContainerDiv.style.zIndex=this.Z_INDEX_BASE['Popup']-1;
+        this.layerContainerOriginPx = {x: 0, y: 0};
+        this.applyTransform();
         
         this.viewPortDiv.appendChild(this.layerContainerDiv);
 
@@ -577,16 +634,11 @@ OpenLayers.Map = OpenLayers.Class({
         if(this.eventListeners instanceof Object) {
             this.events.on(this.eventListeners);
         }
- 
-        // Because Mozilla does not support the "resize" event for elements 
-        // other than "window", we need to put a hack here. 
-        if (parseFloat(navigator.appVersion.split("MSIE")[1]) < 9) {
-            // If IE < 9, register the resize on the div
-            this.events.register("resize", this, this.updateSize);
-        } else {
-            // Else updateSize on catching the window's resize
-            //  Note that this is ok, as updateSize() does nothing if the 
-            //  map's size has not actually changed.
+
+        if (this.autoUpdateSize === true) {
+            // updateSize on catching the window's resize
+            // Note that this is ok, as updateSize() does nothing if the 
+            // map's size has not actually changed.
             this.updateSizeDestroy = OpenLayers.Function.bind(this.updateSize, 
                 this);
             OpenLayers.Event.observe(window, 'resize',
@@ -662,6 +714,7 @@ OpenLayers.Map = OpenLayers.Class({
              * be properly set below.
              */
             delete this.center;
+            delete this.zoom;
             this.addLayers(options.layers);
             // set center (and optionally zoom)
             if (options.center && !this.getCenter()) {
@@ -669,6 +722,13 @@ OpenLayers.Map = OpenLayers.Class({
                 this.setCenter(options.center, options.zoom);
             }
         }
+
+        if (this.panMethod) {
+            this.panTween = new OpenLayers.Tween(this.panMethod);
+        }
+        if (this.zoomMethod && this.applyTransform.transform) {
+            this.zoomTween = new OpenLayers.Tween(this.zoomMethod);
+        }
     },
 
     /** 
@@ -737,6 +797,11 @@ OpenLayers.Map = OpenLayers.Class({
             this.panTween.stop();
             this.panTween = null;
         }
+        // make sure zooming doesn't continue after destruction
+        if(this.zoomTween) {
+            this.zoomTween.stop();
+            this.zoomTween = null;
+        }
 
         // map has been destroyed. dont do it again!
         OpenLayers.Event.stopObserving(window, 'unload', this.unloadDestroy);
@@ -745,9 +810,7 @@ OpenLayers.Map = OpenLayers.Class({
         if (this.updateSizeDestroy) {
             OpenLayers.Event.stopObserving(window, 'resize', 
                                            this.updateSizeDestroy);
-        } else {
-            this.events.unregister("resize", this, this.updateSize);
-        }    
+        }
         
         this.paddingForPopups = null;    
 
@@ -765,10 +828,15 @@ OpenLayers.Map = OpenLayers.Class({
             } 
             this.layers = null;
         }
-        if (this.viewPortDiv) {
-            this.div.removeChild(this.viewPortDiv);
+        if (this.viewPortDiv && this.viewPortDiv.parentNode) {
+            this.viewPortDiv.parentNode.removeChild(this.viewPortDiv);
         }
         this.viewPortDiv = null;
+        
+        if (this.tileManager) {
+            this.tileManager.removeMap(this);
+            this.tileManager = null;
+        }
 
         if(this.eventListeners) {
             this.events.un(this.eventListeners);
@@ -1489,6 +1557,7 @@ OpenLayers.Map = OpenLayers.Class({
     
             }
         }
+        this.events.triggerEvent("updatesize");
     },
     
     /**
@@ -1653,10 +1722,7 @@ OpenLayers.Map = OpenLayers.Class({
      * lonlat - {<OpenLayers.LonLat>}
      */
     panTo: function(lonlat) {
-        if (this.panMethod && this.getExtent().scale(this.panRatio).containsLonLat(lonlat)) {
-            if (!this.panTween) {
-                this.panTween = new OpenLayers.Tween(this.panMethod);
-            }
+        if (this.panTween && this.getExtent().scale(this.panRatio).containsLonLat(lonlat)) {
             var center = this.getCachedCenter();
 
             // center will not change, don't do nothing
@@ -1707,7 +1773,12 @@ OpenLayers.Map = OpenLayers.Class({
      * TBD: reconsider forceZoomChange in 3.0
      */
     setCenter: function(lonlat, zoom, dragging, forceZoomChange) {
-        this.panTween && this.panTween.stop();             
+        if (this.panTween) {
+            this.panTween.stop();
+        }
+        if (this.zoomTween) {
+            this.zoomTween.stop();
+        }            
         this.moveTo(lonlat, zoom, {
             'dragging': dragging,
             'forceZoomChange': forceZoomChange
@@ -1748,17 +1819,16 @@ OpenLayers.Map = OpenLayers.Class({
             }
             this.center = null;
             if (dx) {
-                this.layerContainerDiv.style.left =
-                    parseInt(this.layerContainerDiv.style.left) - dx + "px";
+                this.layerContainerOriginPx.x -= dx;
                 this.minPx.x -= dx;
                 this.maxPx.x -= dx;
             }
             if (dy) {
-                this.layerContainerDiv.style.top =
-                    parseInt(this.layerContainerDiv.style.top) - dy + "px";
+                this.layerContainerOriginPx.y -= dy;
                 this.minPx.y -= dy;
                 this.maxPx.y -= dy;
             }
+            this.applyTransform();
             var layer, i, len;
             for (i=0, len=this.layers.length; i<len; ++i) {
                 layer = this.layers[i];
@@ -1783,18 +1853,42 @@ OpenLayers.Map = OpenLayers.Class({
      * <baseLayer>'s maxExtent.
      */
     adjustZoom: function(zoom) {
-        var resolution, resolutions = this.baseLayer.resolutions,
-            maxResolution = this.getMaxExtent().getWidth() / this.size.w;
-        if (this.getResolutionForZoom(zoom) > maxResolution) {
-            for (var i=zoom|0, ii=resolutions.length; i<ii; ++i) {
-                if (resolutions[i] <= maxResolution) {
-                    zoom = i;
-                    break;
-                }
+        if (this.baseLayer && this.baseLayer.wrapDateLine) {
+            var resolution, resolutions = this.baseLayer.resolutions,
+                maxResolution = this.getMaxExtent().getWidth() / this.size.w;
+            if (this.getResolutionForZoom(zoom) > maxResolution) {
+                if (this.fractionalZoom) {
+                    zoom = this.getZoomForResolution(maxResolution);
+                } else {
+                    for (var i=zoom|0, ii=resolutions.length; i<ii; ++i) {
+                        if (resolutions[i] <= maxResolution) {
+                            zoom = i;
+                            break;
+                        }
+                    }
+                } 
             }
         }
         return zoom;
     },
+    
+    /**
+     * APIMethod: getMinZoom
+     * Returns the minimum zoom level for the current map view. If the base
+     * layer is configured with <wrapDateLine> set to true, this will be the
+     * first zoom level that shows no more than one world width in the current
+     * map viewport. Components that rely on this value (e.g. zoom sliders)
+     * should also listen to the map's "updatesize" event and call this method
+     * in the "updatesize" listener.
+     *
+     * Returns:
+     * {Number} Minimum zoom level that shows a map not wider than its
+     * <baseLayer>'s maxExtent. This is an Integer value, unless the map is
+     * configured with <fractionalZoom> set to true.
+     */
+    getMinZoom: function() {
+        return this.adjustZoom(0);
+    },
 
     /**
      * Method: moveTo
@@ -1817,13 +1911,11 @@ OpenLayers.Map = OpenLayers.Class({
                 zoom = Math.round(zoom);
             }
         }
-        if (this.baseLayer.wrapDateLine) {
-            var requestedZoom = zoom;
-            zoom = this.adjustZoom(zoom);
-            if (zoom !== requestedZoom) {
-                // zoom was adjusted, so keep old lonlat to avoid panning
-                lonlat = this.getCenter();
-            }
+        var requestedZoom = zoom;
+        zoom = this.adjustZoom(zoom);
+        if (zoom !== requestedZoom) {
+            // zoom was adjusted, so keep old lonlat to avoid panning
+            lonlat = this.getCenter();
         }
         // dragging is false by default
         var dragging = options.dragging || this.dragging;
@@ -1878,7 +1970,9 @@ OpenLayers.Map = OpenLayers.Class({
 
         // if neither center nor zoom will change, no need to do anything
         if (zoomChanged || centerChanged || dragging) {
-            dragging || this.events.triggerEvent("movestart");
+            dragging || this.events.triggerEvent("movestart", {
+                zoomChanged: zoomChanged
+            });
 
             if (centerChanged) {
                 if (!zoomChanged && this.center) { 
@@ -1894,8 +1988,9 @@ OpenLayers.Map = OpenLayers.Class({
             // (re)set the layerContainerDiv's location
             if (zoomChanged || this.layerContainerOrigin == null) {
                 this.layerContainerOrigin = this.getCachedCenter();
-                this.layerContainerDiv.style.left = "0px";
-                this.layerContainerDiv.style.top  = "0px";
+                this.layerContainerOriginPx.x = 0;
+                this.layerContainerOriginPx.y = 0;
+                this.applyTransform();
                 var maxExtent = this.getMaxExtent({restricted: true});
                 var maxExtentCenter = maxExtent.getCenterLonLat();
                 var lonDelta = this.center.lon - maxExtentCenter.lon;
@@ -1981,12 +2076,13 @@ OpenLayers.Map = OpenLayers.Class({
         var newPx = this.getViewPortPxFromLonLat(lonlat);
 
         if ((originPx != null) && (newPx != null)) {
-            var oldLeft = parseInt(this.layerContainerDiv.style.left);
-            var oldTop = parseInt(this.layerContainerDiv.style.top);
+            var oldLeft = this.layerContainerOriginPx.x;
+            var oldTop = this.layerContainerOriginPx.y;
             var newLeft = Math.round(originPx.x - newPx.x);
             var newTop = Math.round(originPx.y - newPx.y);
-            this.layerContainerDiv.style.left = newLeft + "px";
-            this.layerContainerDiv.style.top  = newTop + "px";
+            this.applyTransform(
+                (this.layerContainerOriginPx.x = newLeft),
+                (this.layerContainerOriginPx.y = newTop));
             var dx = oldLeft - newLeft;
             var dy = oldTop - newTop;
             this.minPx.x -= dx;
@@ -2285,17 +2381,65 @@ OpenLayers.Map = OpenLayers.Class({
   
     /** 
      * APIMethod: zoomTo
-     * Zoom to a specific zoom level
+     * Zoom to a specific zoom level. Zooming will be animated unless the map
+     * is configured with {zoomMethod: null}. To zoom without animation, use
+     * <setCenter> without a lonlat argument.
      * 
      * Parameters:
      * zoom - {Integer}
      */
-    zoomTo: function(zoom) {
-        if (this.isValidZoomLevel(zoom)) {
-            this.setCenter(null, zoom);
+    zoomTo: function(zoom, xy) {
+        // non-API arguments:
+        // xy - {<OpenLayers.Pixel>} optional zoom origin
+        
+        var map = this;
+        if (map.isValidZoomLevel(zoom)) {
+            if (map.baseLayer.wrapDateLine) {
+                zoom = map.adjustZoom(zoom);
+            }
+            if (map.zoomTween) {
+                var currentRes = map.getResolution(),
+                    targetRes = map.getResolutionForZoom(zoom),
+                    start = {scale: 1},
+                    end = {scale: currentRes / targetRes};
+                if (map.zoomTween.playing && map.zoomTween.duration < 3 * map.zoomDuration) {
+                    // update the end scale, and reuse the running zoomTween
+                    map.zoomTween.finish = {
+                        scale: map.zoomTween.finish.scale * end.scale
+                    };
+                } else {
+                    if (!xy) {
+                        var size = map.getSize();
+                        xy = {x: size.w / 2, y: size.h / 2};
+                    }
+                    map.zoomTween.start(start, end, map.zoomDuration, {
+                        minFrameRate: 50, // don't spend much time zooming
+                        callbacks: {
+                            eachStep: function(data) {
+                                var containerOrigin = map.layerContainerOriginPx,
+                                    scale = data.scale,
+                                    dx = ((scale - 1) * (containerOrigin.x - xy.x)) | 0,
+                                    dy = ((scale - 1) * (containerOrigin.y - xy.y)) | 0;
+                                map.applyTransform(containerOrigin.x + dx, containerOrigin.y + dy, scale);
+                            },
+                            done: function(data) {
+                                map.applyTransform();
+                                var resolution = map.getResolution() / data.scale,
+                                    zoom = map.getZoomForResolution(resolution, true)
+                                map.moveTo(map.getZoomTargetCenter(xy, resolution), zoom, true);
+                            }
+                        }
+                    });
+                }
+            } else {
+                var center = xy ?
+                    map.getZoomTargetCenter(xy, map.getResolutionForZoom(zoom)) :
+                    null;
+                map.setCenter(center, zoom);
+            }
         }
     },
-    
+        
     /**
      * APIMethod: zoomIn
      * 
@@ -2453,7 +2597,32 @@ OpenLayers.Map = OpenLayers.Class({
         return px;
     },
 
-    
+    /**
+     * Method: getZoomTargetCenter
+     *
+     * Parameters:
+     * xy - {<OpenLayers.Pixel>} The zoom origin pixel location on the screen
+     * resolution - {Float} The resolution we want to get the center for
+     *
+     * Returns:
+     * {<OpenLayers.LonLat>} The location of the map center after the
+     *     transformation described by the origin xy and the target resolution.
+     */
+    getZoomTargetCenter: function (xy, resolution) {
+        var lonlat = null,
+            size = this.getSize(),
+            deltaX  = size.w/2 - xy.x,
+            deltaY  = xy.y - size.h/2,
+            zoomPoint = this.getLonLatFromPixel(xy);
+        if (zoomPoint) {
+            lonlat = new OpenLayers.LonLat(
+                zoomPoint.lon + deltaX * resolution,
+                zoomPoint.lat + deltaY * resolution
+            );
+        }
+        return lonlat;
+    },
+        
   //
   // CONVENIENCE TRANSLATION FUNCTIONS FOR API
   //
@@ -2547,8 +2716,8 @@ OpenLayers.Map = OpenLayers.Class({
     getViewPortPxFromLayerPx:function(layerPx) {
         var viewPortPx = null;
         if (layerPx != null) {
-            var dX = parseInt(this.layerContainerDiv.style.left);
-            var dY = parseInt(this.layerContainerDiv.style.top);
+            var dX = this.layerContainerOriginPx.x;
+            var dY = this.layerContainerOriginPx.y;
             viewPortPx = layerPx.add(dX, dY);            
         }
         return viewPortPx;
@@ -2567,8 +2736,8 @@ OpenLayers.Map = OpenLayers.Class({
     getLayerPxFromViewPortPx:function(viewPortPx) {
         var layerPx = null;
         if (viewPortPx != null) {
-            var dX = -parseInt(this.layerContainerDiv.style.left);
-            var dY = -parseInt(this.layerContainerDiv.style.top);
+            var dX = -this.layerContainerOriginPx.x;
+            var dY = -this.layerContainerOriginPx.y;
             layerPx = viewPortPx.add(dX, dY);
             if (isNaN(layerPx.x) || isNaN(layerPx.y)) {
                 layerPx = null;
@@ -2613,6 +2782,76 @@ OpenLayers.Map = OpenLayers.Class({
        return this.getLayerPxFromViewPortPx(px);         
     },
 
+    /**
+     * Method: applyTransform
+     * Applies the given transform to the <layerContainerDiv>. This method has
+     * a 2-stage fallback from translate3d/scale3d via translate/scale to plain
+     * style.left/style.top, in which case no scaling is supported.
+     *
+     * Parameters:
+     * x - {Number} x parameter for the translation. Defaults to the x value of
+     *     the map's <layerContainerOriginPx>
+     * y - {Number} y parameter for the translation. Defaults to the y value of
+     *     the map's <layerContainerOriginPx>
+     * scale - {Number} scale. Defaults to 1 if not provided.
+     */
+     applyTransform: function(x, y, scale) {
+         scale = scale || 1;
+         var origin = this.layerContainerOriginPx,
+             needTransform = scale !== 1;
+         x = x || origin.x;
+         y = y || origin.y;
+            
+         var style = this.layerContainerDiv.style,
+             transform = this.applyTransform.transform,
+             template = this.applyTransform.template;
+        
+         if (transform === undefined) {
+             transform = OpenLayers.Util.vendorPrefix.style('transform');
+             this.applyTransform.transform = transform;
+             if (transform) {
+                 // Try translate3d, but only if the viewPortDiv has a transform
+                 // defined in a stylesheet
+                 var computedStyle = OpenLayers.Element.getStyle(this.viewPortDiv,
+                     OpenLayers.Util.vendorPrefix.css('transform'));
+                 if (!computedStyle || computedStyle !== 'none') {
+                     template = ['translate3d(', ',0) ', 'scale3d(', ',1)'];
+                     style[transform] = [template[0], '0,0', template[1]].join('');
+                 }
+                 // If no transform is defined in the stylesheet or translate3d
+                 // does not stick, use translate and scale
+                 if (!template || !~style[transform].indexOf(template[0])) {
+                     template = ['translate(', ') ', 'scale(', ')'];
+                 }
+                 this.applyTransform.template = template;
+             }
+         }
+         
+         // If we do 3d transforms, we always want to use them. If we do 2d
+         // transforms, we only use them when we need to.
+         if (transform !== null && (template[0] === 'translate3d(' || needTransform === true)) {
+             // Our 2d transforms are combined with style.left and style.top, so
+             // adjust x and y values and set the origin as left and top
+             if (needTransform === true && template[0] === 'translate(') {
+                 x -= origin.x;
+                 y -= origin.y;
+                 style.left = origin.x + 'px';
+                 style.top = origin.y + 'px';
+             }
+             style[transform] = [
+                 template[0], x, 'px,', y, 'px', template[1],
+                 template[2], scale, ',', scale, template[3]
+             ].join('');
+         } else {
+             style.left = x + 'px';
+             style.top = y + 'px';
+             // We previously might have had needTransform, so remove transform
+             if (transform !== null) {
+                 style[transform] = '';
+             }
+         }
+     },
+    
     CLASS_NAME: "OpenLayers.Map"
 });
 
diff --git a/lib/OpenLayers/Marker.js b/lib/OpenLayers/Marker.js
index 984383f..1dde347 100644
--- a/lib/OpenLayers/Marker.js
+++ b/lib/OpenLayers/Marker.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Marker/Box.js b/lib/OpenLayers/Marker/Box.js
index 435f221..e42e560 100644
--- a/lib/OpenLayers/Marker/Box.js
+++ b/lib/OpenLayers/Marker/Box.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -81,7 +81,7 @@ OpenLayers.Marker.Box = OpenLayers.Class(OpenLayers.Marker, {
     * sz - {<OpenLayers.Size>} 
     * 
     * Returns: 
-    * {DOMElement} A new DOM Image with this marker�s icon set at the 
+    * {DOMElement} A new DOM Image with this marker's icon set at the 
     *         location passed-in
     */
     draw: function(px, sz) {
diff --git a/lib/OpenLayers/Popup.js b/lib/OpenLayers/Popup.js
index 2955766..290318e 100644
--- a/lib/OpenLayers/Popup.js
+++ b/lib/OpenLayers/Popup.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -694,7 +694,7 @@ OpenLayers.Popup = OpenLayers.Class({
             }
 
             OpenLayers.Event.stopObserving(
-                this.img, "load", this.img._onImageLoad
+                this.img, "load", this.img._onImgLoad
             );
     
         };
diff --git a/lib/OpenLayers/Popup/Anchored.js b/lib/OpenLayers/Popup/Anchored.js
index 0795d9f..9415546 100644
--- a/lib/OpenLayers/Popup/Anchored.js
+++ b/lib/OpenLayers/Popup/Anchored.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -107,11 +107,8 @@ OpenLayers.Popup.Anchored =
     moveTo: function(px) {
         var oldRelativePosition = this.relativePosition;
         this.relativePosition = this.calculateRelativePosition(px);
-        
-        var newPx = this.calculateNewPx(px);
-        
-        var newArguments = new Array(newPx);        
-        OpenLayers.Popup.prototype.moveTo.apply(this, newArguments);
+
+        OpenLayers.Popup.prototype.moveTo.call(this, this.calculateNewPx(px));
         
         //if this move has caused the popup to change its relative position, 
         // we need to make the appropriate cosmetic changes.
diff --git a/lib/OpenLayers/Popup/AnchoredBubble.js b/lib/OpenLayers/Popup/AnchoredBubble.js
deleted file mode 100644
index 9d857ea..0000000
--- a/lib/OpenLayers/Popup/AnchoredBubble.js
+++ /dev/null
@@ -1,196 +0,0 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
- * full list of contributors). Published under the 2-clause BSD license.
- * See license.txt in the OpenLayers distribution or repository for the
- * full text of the license. */
-
-
-/**
- * @requires OpenLayers/Popup/Anchored.js
- * @requires OpenLayers/Console.js
- * @requires Rico/Corner.js
- */
-
-/**
- * Class: OpenLayers.Popup.AnchoredBubble
- * This class is *deprecated*. Use {<OpenLayers.Popup.Anchored>} and
- * round corners using CSS3's border-radius property.
- * 
- * Inherits from: 
- *  - <OpenLayers.Popup.Anchored>
- */
-OpenLayers.Popup.AnchoredBubble = 
-  OpenLayers.Class(OpenLayers.Popup.Anchored, {
-
-    /**
-     * Property: rounded
-     * {Boolean} Has the popup been rounded yet?
-     */
-    rounded: false, 
-    
-    /** 
-     * Constructor: OpenLayers.Popup.AnchoredBubble
-     * 
-     * Parameters:
-     * id - {String}
-     * lonlat - {<OpenLayers.LonLat>}
-     * contentSize - {<OpenLayers.Size>}
-     * contentHTML - {String}
-     * anchor - {Object} Object to which we'll anchor the popup. Must expose 
-     *     a 'size' (<OpenLayers.Size>) and 'offset' (<OpenLayers.Pixel>) 
-     *     (Note that this is generally an <OpenLayers.Icon>).
-     * closeBox - {Boolean}
-     * closeBoxCallback - {Function} Function to be called on closeBox click.
-     */
-    initialize:function(id, lonlat, contentSize, contentHTML, anchor, closeBox,
-                        closeBoxCallback) {
-
-        OpenLayers.Console.warn('AnchoredBubble is deprecated');
-        
-        this.padding = new OpenLayers.Bounds(
-            0, OpenLayers.Popup.AnchoredBubble.CORNER_SIZE,
-            0, OpenLayers.Popup.AnchoredBubble.CORNER_SIZE
-        );
-        OpenLayers.Popup.Anchored.prototype.initialize.apply(this, arguments);
-    },
-
-    /** 
-     * Method: draw
-     * 
-     * Parameters:
-     * px - {<OpenLayers.Pixel>}
-     * 
-     * Returns:
-     * {DOMElement} Reference to a div that contains the drawn popup.
-     */
-    draw: function(px) {
-        
-        OpenLayers.Popup.Anchored.prototype.draw.apply(this, arguments);
-
-        this.setContentHTML();
-        
-        //set the popup color and opacity           
-        this.setBackgroundColor(); 
-        this.setOpacity();
-
-        return this.div;
-    },
-
-    /**
-     * Method: updateRelativePosition
-     * The popup has been moved to a new relative location, in which case
-     *     we will want to re-do the rico corners.
-     */
-    updateRelativePosition: function() {
-        this.setRicoCorners();
-    },
-
-    /**
-     * APIMethod: setSize
-     * 
-     * Parameters:
-     * contentSize - {<OpenLayers.Size>} the new size for the popup's 
-     *     contents div (in pixels).
-     */
-    setSize:function(contentSize) { 
-        OpenLayers.Popup.Anchored.prototype.setSize.apply(this, arguments);
-
-        this.setRicoCorners();
-    },  
-
-    /**
-     * APIMethod: setBackgroundColor
-     * 
-     * Parameters:
-     * color - {String}
-     */
-    setBackgroundColor:function(color) { 
-        if (color != undefined) {
-            this.backgroundColor = color; 
-        }
-        
-        if (this.div != null) {
-            if (this.contentDiv != null) {
-                this.div.style.background = "transparent";
-                OpenLayers.Rico.Corner.changeColor(this.groupDiv, 
-                                                   this.backgroundColor);
-            }
-        }
-    },  
-    
-    /**
-     * APIMethod: setOpacity
-     * 
-     * Parameters: 
-     * opacity - {float}
-     */
-    setOpacity:function(opacity) { 
-        OpenLayers.Popup.Anchored.prototype.setOpacity.call(this, opacity);
-        
-        if (this.div != null) {
-            if (this.groupDiv != null) {
-                OpenLayers.Rico.Corner.changeOpacity(this.groupDiv, 
-                                                     this.opacity);
-            }
-        }
-    },  
- 
-    /** 
-     * Method: setBorder
-     * Always sets border to 0. Bubble Popups can not have a border.
-     * 
-     * Parameters:
-     * border - {Integer}
-     */
-    setBorder:function(border) { 
-        this.border = 0;
-    },      
- 
-    /** 
-     * Method: setRicoCorners
-     * Update RICO corners according to the popup's current relative postion.
-     */
-    setRicoCorners:function() {
-    
-        var corners = this.getCornersToRound(this.relativePosition);
-        var options = {corners: corners,
-                         color: this.backgroundColor,
-                       bgColor: "transparent",
-                         blend: false};
-
-        if (!this.rounded) {
-            OpenLayers.Rico.Corner.round(this.div, options);
-            this.rounded = true;
-        } else {
-            OpenLayers.Rico.Corner.reRound(this.groupDiv, options);
-            //set the popup color and opacity
-            this.setBackgroundColor(); 
-            this.setOpacity();
-        }
-    },
-
-    /** 
-     * Method: getCornersToRound
-     *  
-     * Returns:
-     * {String} The proper corners string ("tr tl bl br") for rico to round.
-     */
-    getCornersToRound:function() {
-
-        var corners = ['tl', 'tr', 'bl', 'br'];
-
-        //we want to round all the corners _except_ the opposite one. 
-        var corner = OpenLayers.Bounds.oppositeQuadrant(this.relativePosition);
-        OpenLayers.Util.removeItem(corners, corner);
-
-        return corners.join(" ");
-    },
-
-    CLASS_NAME: "OpenLayers.Popup.AnchoredBubble"
-});
-
-/**
- * Constant: CORNER_SIZE
- * {Integer} 5. Border space for the RICO corners.
- */
-OpenLayers.Popup.AnchoredBubble.CORNER_SIZE = 5;
-
diff --git a/lib/OpenLayers/Popup/Framed.js b/lib/OpenLayers/Popup/Framed.js
index 4d76490..cb2d5d9 100644
--- a/lib/OpenLayers/Popup/Framed.js
+++ b/lib/OpenLayers/Popup/Framed.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Popup/FramedCloud.js b/lib/OpenLayers/Popup/FramedCloud.js
index ce1c322..8ad8b94 100644
--- a/lib/OpenLayers/Popup/FramedCloud.js
+++ b/lib/OpenLayers/Popup/FramedCloud.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Projection.js b/lib/OpenLayers/Projection.js
index 03d64e6..387e26a 100644
--- a/lib/OpenLayers/Projection.js
+++ b/lib/OpenLayers/Projection.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -62,7 +62,7 @@ OpenLayers.Projection = OpenLayers.Class({
     initialize: function(projCode, options) {
         OpenLayers.Util.extend(this, options);
         this.projCode = projCode;
-        if (window.Proj4js) {
+        if (typeof Proj4js == "object") {
             this.proj = new Proj4js.Proj(projCode);
         }
     },
@@ -115,7 +115,7 @@ OpenLayers.Projection = OpenLayers.Class({
             if (!(p instanceof OpenLayers.Projection)) {
                 p = new OpenLayers.Projection(p);
             }
-            if (window.Proj4js && this.proj.defData && p.proj.defData) {
+            if ((typeof Proj4js == "object") && this.proj.defData && p.proj.defData) {
                 equals = this.proj.defData.replace(this.titleRegEx, "") ==
                     p.proj.defData.replace(this.titleRegEx, "");
             } else if (p.getCode) {
@@ -287,7 +287,8 @@ OpenLayers.Projection.nullTransform = function(point) {
 
     function forwardMercator(xy) {
         xy.x = xy.x * pole / 180;
-        xy.y = Math.log(Math.tan((90 + xy.y) * Math.PI / 360)) / Math.PI * pole;
+        var y = Math.log(Math.tan((90 + xy.y) * Math.PI / 360)) / Math.PI * pole;
+        xy.y = Math.max(-20037508.34, Math.min(y, 20037508.34));
         return xy;
     }
 
diff --git a/lib/OpenLayers/Protocol.js b/lib/OpenLayers/Protocol.js
index e094c06..7e63439 100644
--- a/lib/OpenLayers/Protocol.js
+++ b/lib/OpenLayers/Protocol.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/CSW.js b/lib/OpenLayers/Protocol/CSW.js
index aa912bf..5641182 100644
--- a/lib/OpenLayers/Protocol/CSW.js
+++ b/lib/OpenLayers/Protocol/CSW.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/CSW/v2_0_2.js b/lib/OpenLayers/Protocol/CSW/v2_0_2.js
index dc07622..88bfd75 100644
--- a/lib/OpenLayers/Protocol/CSW/v2_0_2.js
+++ b/lib/OpenLayers/Protocol/CSW/v2_0_2.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -61,7 +61,7 @@ OpenLayers.Protocol.CSW.v2_0_2 = OpenLayers.Class(OpenLayers.Protocol, {
         OpenLayers.Util.applyDefaults(options, this.options || {});
         var response = new OpenLayers.Protocol.Response({requestType: "read"});
 
-        var data = this.format.write(options.params);
+        var data = this.format.write(options.params || options);
 
         response.priv = OpenLayers.Request.POST({
             url: options.url,
diff --git a/lib/OpenLayers/Protocol/HTTP.js b/lib/OpenLayers/Protocol/HTTP.js
index 75aeda3..a53b497 100644
--- a/lib/OpenLayers/Protocol/HTTP.js
+++ b/lib/OpenLayers/Protocol/HTTP.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/SOS.js b/lib/OpenLayers/Protocol/SOS.js
index 1211b60..578f369 100644
--- a/lib/OpenLayers/Protocol/SOS.js
+++ b/lib/OpenLayers/Protocol/SOS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/SOS/v1_0_0.js b/lib/OpenLayers/Protocol/SOS/v1_0_0.js
index 367065b..9cf87f5 100644
--- a/lib/OpenLayers/Protocol/SOS/v1_0_0.js
+++ b/lib/OpenLayers/Protocol/SOS/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/Script.js b/lib/OpenLayers/Protocol/Script.js
index 925a36f..93ab32a 100644
--- a/lib/OpenLayers/Protocol/Script.js
+++ b/lib/OpenLayers/Protocol/Script.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/WFS.js b/lib/OpenLayers/Protocol/WFS.js
index 194fd8a..66faf43 100644
--- a/lib/OpenLayers/Protocol/WFS.js
+++ b/lib/OpenLayers/Protocol/WFS.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/WFS/v1.js b/lib/OpenLayers/Protocol/WFS/v1.js
index eb1abf6..8a21d7e 100644
--- a/lib/OpenLayers/Protocol/WFS/v1.js
+++ b/lib/OpenLayers/Protocol/WFS/v1.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -46,6 +46,11 @@ OpenLayers.Protocol.WFS.v1 = OpenLayers.Class(OpenLayers.Protocol, {
      *     "the_geom" for WFS <version> 1.0, and null for higher versions.
      */
     geometryName: "the_geom",
+
+    /**
+     * Property: maxFeatures
+     * {Integer} Optional maximum number of features to retrieve.
+     */
     
     /**
      * Property: schema
diff --git a/lib/OpenLayers/Protocol/WFS/v1_0_0.js b/lib/OpenLayers/Protocol/WFS/v1_0_0.js
index 2de88ed..b1e2ca1 100644
--- a/lib/OpenLayers/Protocol/WFS/v1_0_0.js
+++ b/lib/OpenLayers/Protocol/WFS/v1_0_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Protocol/WFS/v1_1_0.js b/lib/OpenLayers/Protocol/WFS/v1_1_0.js
index 52eaeb0..97991a6 100644
--- a/lib/OpenLayers/Protocol/WFS/v1_1_0.js
+++ b/lib/OpenLayers/Protocol/WFS/v1_1_0.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Renderer.js b/lib/OpenLayers/Renderer.js
index 111a13d..c5c7d0d 100644
--- a/lib/OpenLayers/Renderer.js
+++ b/lib/OpenLayers/Renderer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Renderer/Canvas.js b/lib/OpenLayers/Renderer/Canvas.js
index 7c2421a..61a327c 100644
--- a/lib/OpenLayers/Renderer/Canvas.js
+++ b/lib/OpenLayers/Renderer/Canvas.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -241,8 +241,9 @@ OpenLayers.Renderer.Canvas = OpenLayers.Class(OpenLayers.Renderer, {
     drawExternalGraphic: function(geometry, style, featureId) {
         var img = new Image();
 
-        if (style.graphicTitle) {
-            img.title = style.graphicTitle;           
+        var title = style.title || style.graphicTitle;        
+        if (title) {
+            img.title = title;           
         }
 
         var width = style.graphicWidth || style.graphicHeight;
@@ -711,6 +712,7 @@ OpenLayers.Renderer.Canvas = OpenLayers.Class(OpenLayers.Renderer, {
             for (var i = 0; i < numRows; i++) {
                 if (style.labelOutlineWidth) {
                     this.canvas.save();
+                    this.canvas.globalAlpha = style.labelOutlineOpacity || style.fontOpacity || 1.0;
                     this.canvas.strokeStyle = style.labelOutlineColor;
                     this.canvas.lineWidth = style.labelOutlineWidth;
                     this.canvas.strokeText(labelRows[i], pt[0], pt[1] + (lineHeight*i) + 1);
@@ -799,7 +801,7 @@ OpenLayers.Renderer.Canvas = OpenLayers.Class(OpenLayers.Renderer, {
                 if (data[3] === 255) { // antialiased
                     var id = data[2] + (256 * (data[1] + (256 * data[0])));
                     if (id) {
-                        featureId = "OpenLayers.Feature.Vector_" + (id - 1 + this.hitOverflow);
+                        featureId = "OpenLayers_Feature_Vector_" + (id - 1 + this.hitOverflow);
                         try {
                             feature = this.features[featureId][0];
                         } catch(err) {
diff --git a/lib/OpenLayers/Renderer/Elements.js b/lib/OpenLayers/Renderer/Elements.js
index 8f11d92..18a0d79 100644
--- a/lib/OpenLayers/Renderer/Elements.js
+++ b/lib/OpenLayers/Renderer/Elements.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Renderer/SVG.js b/lib/OpenLayers/Renderer/SVG.js
index fece889..263aac0 100644
--- a/lib/OpenLayers/Renderer/SVG.js
+++ b/lib/OpenLayers/Renderer/SVG.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -239,6 +239,22 @@ OpenLayers.Renderer.SVG = OpenLayers.Class(OpenLayers.Renderer.Elements, {
     setStyle: function(node, style, options) {
         style = style  || node._style;
         options = options || node._options;
+
+        var title = style.title || style.graphicTitle;
+        if (title) {
+            node.setAttributeNS(null, "title", title);
+            //Standards-conformant SVG
+            // Prevent duplicate nodes. See issue https://github.com/openlayers/openlayers/issues/92 
+            var titleNode = node.getElementsByTagName("title");
+            if (titleNode.length > 0) {
+                titleNode[0].firstChild.textContent = title;
+            } else {
+                var label = this.nodeFactory(null, "title");
+                label.textContent = title;
+                node.appendChild(label);
+            }
+        }
+
         var r = parseFloat(node.getAttributeNS(null, "r"));
         var widthFactor = 1;
         var pos;
@@ -248,20 +264,6 @@ OpenLayers.Renderer.SVG = OpenLayers.Class(OpenLayers.Renderer.Elements, {
                 node.style.visibility = "hidden";
             } else if (style.externalGraphic) {
                 pos = this.getPosition(node);
-                
-                if (style.graphicTitle) {
-                    node.setAttributeNS(null, "title", style.graphicTitle);
-                    //Standards-conformant SVG
-                    // Prevent duplicate nodes. See issue https://github.com/openlayers/openlayers/issues/92 
-                    var titleNode = node.getElementsByTagName("title");
-                    if (titleNode.length > 0) {
-                        titleNode[0].firstChild.textContent = style.graphicTitle;
-                    } else {
-                        var label = this.nodeFactory(null, "title");
-                        label.textContent = style.graphicTitle;
-                        node.appendChild(label);
-                    }
-                }
                 if (style.graphicWidth && style.graphicHeight) {
                   node.setAttributeNS(null, "preserveAspectRatio", "none");
                 }
@@ -280,9 +282,9 @@ OpenLayers.Renderer.SVG = OpenLayers.Class(OpenLayers.Renderer.Elements, {
                 node.setAttributeNS(null, "y", (pos.y + yOffset).toFixed());
                 node.setAttributeNS(null, "width", width);
                 node.setAttributeNS(null, "height", height);
-                node.setAttributeNS(this.xlinkns, "href", style.externalGraphic);
+                node.setAttributeNS(this.xlinkns, "xlink:href", style.externalGraphic);
                 node.setAttributeNS(null, "style", "opacity: "+opacity);
-                node.onclick = OpenLayers.Renderer.SVG.preventDefault;
+                node.onclick = OpenLayers.Event.preventDefault;
             } else if (this.isComplexSymbol(style.graphicName)) {
                 // the symbol viewBox is three times as large as the symbol
                 var offset = style.pointRadius * 3;
@@ -653,6 +655,9 @@ OpenLayers.Renderer.SVG = OpenLayers.Class(OpenLayers.Renderer.Elements, {
             outlineStyle.fontColor = outlineStyle.labelOutlineColor;
             outlineStyle.fontStrokeColor = outlineStyle.labelOutlineColor;
             outlineStyle.fontStrokeWidth = style.labelOutlineWidth;
+            if (style.labelOutlineOpacity) {
+                outlineStyle.fontOpacity = style.labelOutlineOpacity;
+            }
             delete outlineStyle.labelOutlineWidth;
             this.drawText(featureId, outlineStyle, location);
         }
@@ -998,9 +1003,10 @@ OpenLayers.Renderer.SVG.LABEL_VFACTOR = {
 
 /**
  * Function: OpenLayers.Renderer.SVG.preventDefault
+ * *Deprecated*.  Use <OpenLayers.Event.preventDefault> method instead.
  * Used to prevent default events (especially opening images in a new tab on
  * ctrl-click) from being executed for externalGraphic symbols
  */
 OpenLayers.Renderer.SVG.preventDefault = function(e) {
-    e.preventDefault && e.preventDefault();
+    OpenLayers.Event.preventDefault(e);
 };
diff --git a/lib/OpenLayers/Renderer/VML.js b/lib/OpenLayers/Renderer/VML.js
index 50c3d68..8f6374b 100644
--- a/lib/OpenLayers/Renderer/VML.js
+++ b/lib/OpenLayers/Renderer/VML.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -207,12 +207,14 @@ OpenLayers.Renderer.VML = OpenLayers.Class(OpenLayers.Renderer.Elements, {
         options = options || node._options;
         var fillColor = style.fillColor;
 
+        var title = style.title || style.graphicTitle;
+        if (title) {
+            node.title = title;
+        } 
+
         if (node._geometryClass === "OpenLayers.Geometry.Point") {
             if (style.externalGraphic) {
                 options.isFilled = true;
-                if (style.graphicTitle) {
-                    node.title=style.graphicTitle;
-                } 
                 var width = style.graphicWidth || style.graphicHeight;
                 var height = style.graphicHeight || style.graphicWidth;
                 width = width ? width : style.pointRadius*2;
diff --git a/lib/OpenLayers/Request.js b/lib/OpenLayers/Request.js
index 63edf6b..2b28dfc 100644
--- a/lib/OpenLayers/Request.js
+++ b/lib/OpenLayers/Request.js
@@ -1,10 +1,11 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
 
 /**
  * @requires OpenLayers/Events.js
+ * @requires OpenLayers/Request/XMLHttpRequest.js
  */
 
 /**
@@ -19,7 +20,14 @@ OpenLayers.ProxyHost = "";
  *     with XMLHttpRequests.  These methods work with a cross-browser
  *     W3C compliant <OpenLayers.Request.XMLHttpRequest> class.
  */
-OpenLayers.Request = {
+if (!OpenLayers.Request) {
+    /**
+     * This allows for OpenLayers/Request/XMLHttpRequest.js to be included
+     * before or after this script.
+     */
+    OpenLayers.Request = {};
+}
+OpenLayers.Util.extend(OpenLayers.Request, {
     
     /**
      * Constant: DEFAULT_CONFIG
@@ -98,9 +106,6 @@ OpenLayers.Request = {
                 } else {
                     url = proxy + encodeURIComponent(url);
                 }
-            } else {
-                OpenLayers.Console.warn(
-                    OpenLayers.i18n("proxyNeeded"), {url: url});
             }
         }
         return url;
@@ -168,8 +173,10 @@ OpenLayers.Request = {
             this.DEFAULT_CONFIG,
             {proxy: OpenLayers.ProxyHost}
         );
+        config = config || {};
+        config.headers = config.headers || {};
         config = OpenLayers.Util.applyDefaults(config, defaultConfig);
-        
+        config.headers = OpenLayers.Util.applyDefaults(config.headers, defaultConfig.headers);
         // Always set the "X-Requested-With" header to signal that this request
         // was issued through the XHR-object. Since header keys are case 
         // insensitive and we want to allow overriding of the "X-Requested-With"
@@ -419,4 +426,4 @@ OpenLayers.Request = {
         return OpenLayers.Request.issue(config);
     }
 
-};
+});
diff --git a/lib/OpenLayers/Request/XMLHttpRequest.js b/lib/OpenLayers/Request/XMLHttpRequest.js
index db32295..21200a6 100644
--- a/lib/OpenLayers/Request/XMLHttpRequest.js
+++ b/lib/OpenLayers/Request/XMLHttpRequest.js
@@ -447,5 +447,12 @@
      *     XMLHttpRequest object.  From
      *     http://code.google.com/p/xmlhttprequest/.
      */
+    if (!OpenLayers.Request) {
+        /**
+         * This allows for OpenLayers/Request.js to be included
+         * before or after this script.
+         */
+        OpenLayers.Request = {};
+    }
     OpenLayers.Request.XMLHttpRequest = cXMLHttpRequest;
 })();
diff --git a/lib/OpenLayers/Rule.js b/lib/OpenLayers/Rule.js
index e9631cd..dbf5e68 100644
--- a/lib/OpenLayers/Rule.js
+++ b/lib/OpenLayers/Rule.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/SingleFile.js b/lib/OpenLayers/SingleFile.js
index 3e5d662..701ea5d 100644
--- a/lib/OpenLayers/SingleFile.js
+++ b/lib/OpenLayers/SingleFile.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -7,7 +7,7 @@ var OpenLayers = {
     /**
      * Constant: VERSION_NUMBER
      */
-    VERSION_NUMBER: "Release 2.12",
+    VERSION_NUMBER: "Release 2.13",
 
     /**
      * Constant: singleFile
diff --git a/lib/OpenLayers/Spherical.js b/lib/OpenLayers/Spherical.js
index 566014d..74e14a8 100644
--- a/lib/OpenLayers/Spherical.js
+++ b/lib/OpenLayers/Spherical.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Strategy.js b/lib/OpenLayers/Strategy.js
index eeba84b..113deb1 100644
--- a/lib/OpenLayers/Strategy.js
+++ b/lib/OpenLayers/Strategy.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Strategy/BBOX.js b/lib/OpenLayers/Strategy/BBOX.js
index 6df04b1..e066764 100644
--- a/lib/OpenLayers/Strategy/BBOX.js
+++ b/lib/OpenLayers/Strategy/BBOX.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -217,10 +217,11 @@ OpenLayers.Strategy.BBOX = OpenLayers.Class(OpenLayers.Strategy, {
             this.layer.protocol.abort(this.response);
             this.layer.events.triggerEvent("loadend");
         }
-        this.layer.events.triggerEvent("loadstart");
+        var evt = {filter: this.createFilter()};
+        this.layer.events.triggerEvent("loadstart", evt);
         this.response = this.layer.protocol.read(
             OpenLayers.Util.applyDefaults({
-                filter: this.createFilter(),
+                filter: evt.filter,
                 callback: this.merge,
                 scope: this
         }, options));
@@ -262,23 +263,27 @@ OpenLayers.Strategy.BBOX = OpenLayers.Class(OpenLayers.Strategy, {
      */
     merge: function(resp) {
         this.layer.destroyFeatures();
-        var features = resp.features;
-        if(features && features.length > 0) {
-            var remote = this.layer.projection;
-            var local = this.layer.map.getProjectionObject();
-            if(!local.equals(remote)) {
-                var geom;
-                for(var i=0, len=features.length; i<len; ++i) {
-                    geom = features[i].geometry;
-                    if(geom) {
-                        geom.transform(remote, local);
+        if (resp.success()) {
+            var features = resp.features;
+            if(features && features.length > 0) {
+                var remote = this.layer.projection;
+                var local = this.layer.map.getProjectionObject();
+                if(!local.equals(remote)) {
+                    var geom;
+                    for(var i=0, len=features.length; i<len; ++i) {
+                        geom = features[i].geometry;
+                        if(geom) {
+                            geom.transform(remote, local);
+                        }
                     }
                 }
+                this.layer.addFeatures(features);
             }
-            this.layer.addFeatures(features);
+        } else {
+            this.bounds = null;
         }
         this.response = null;
-        this.layer.events.triggerEvent("loadend");
+        this.layer.events.triggerEvent("loadend", {response: resp});
     },
    
     CLASS_NAME: "OpenLayers.Strategy.BBOX" 
diff --git a/lib/OpenLayers/Strategy/Cluster.js b/lib/OpenLayers/Strategy/Cluster.js
index 50a14b7..d478598 100644
--- a/lib/OpenLayers/Strategy/Cluster.js
+++ b/lib/OpenLayers/Strategy/Cluster.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -79,6 +79,7 @@ OpenLayers.Strategy.Cluster = OpenLayers.Class(OpenLayers.Strategy, {
         if(activated) {
             this.layer.events.on({
                 "beforefeaturesadded": this.cacheFeatures,
+                "featuresremoved": this.clearCache,
                 "moveend": this.cluster,
                 scope: this
             });
@@ -100,6 +101,7 @@ OpenLayers.Strategy.Cluster = OpenLayers.Class(OpenLayers.Strategy, {
             this.clearCache();
             this.layer.events.un({
                 "beforefeaturesadded": this.cacheFeatures,
+                "featuresremoved": this.clearCache,
                 "moveend": this.cluster,
                 scope: this
             });
@@ -134,7 +136,9 @@ OpenLayers.Strategy.Cluster = OpenLayers.Class(OpenLayers.Strategy, {
      * Clear out the cached features.
      */
     clearCache: function() {
-        this.features = null;
+        if(!this.clustering) {
+            this.features = null;
+        }
     },
     
     /**
@@ -169,7 +173,9 @@ OpenLayers.Strategy.Cluster = OpenLayers.Class(OpenLayers.Strategy, {
                         }
                     }
                 }
+                this.clustering = true;
                 this.layer.removeAllFeatures();
+                this.clustering = false;
                 if(clusters.length > 0) {
                     if(this.threshold > 1) {
                         var clone = clusters.slice();
diff --git a/lib/OpenLayers/Strategy/Filter.js b/lib/OpenLayers/Strategy/Filter.js
index 987325e..721fe52 100644
--- a/lib/OpenLayers/Strategy/Filter.js
+++ b/lib/OpenLayers/Strategy/Filter.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Strategy/Fixed.js b/lib/OpenLayers/Strategy/Fixed.js
index 0893b0d..b06f2cd 100644
--- a/lib/OpenLayers/Strategy/Fixed.js
+++ b/lib/OpenLayers/Strategy/Fixed.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -42,7 +42,8 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, {
      *      the strategy was already active.
      */
     activate: function() {
-        if(OpenLayers.Strategy.prototype.activate.apply(this, arguments)) {
+        var activated = OpenLayers.Strategy.prototype.activate.apply(this, arguments);
+        if(activated) {
             this.layer.events.on({
                 "refresh": this.load,
                 scope: this
@@ -55,9 +56,8 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, {
                     scope: this
                 });
             }
-            return true;
         }
-        return false;
+        return activated;
     },
     
     /**
@@ -88,11 +88,11 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, {
      */
     load: function(options) {
         var layer = this.layer;
-        layer.events.triggerEvent("loadstart");
+        layer.events.triggerEvent("loadstart", {filter: layer.filter});
         layer.protocol.read(OpenLayers.Util.applyDefaults({
-            callback: OpenLayers.Function.bind(this.merge, this,
-                layer.map.getProjectionObject()),
-            filter: layer.filter
+            callback: this.merge,
+            filter: layer.filter,
+            scope: this
         }, options));
         layer.events.un({
             "visibilitychanged": this.load,
@@ -103,28 +103,32 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, {
     /**
      * Method: merge
      * Add all features to the layer.
+     *     If the layer projection differs from the map projection, features
+     *     will be transformed from the layer projection to the map projection.
      *
      * Parameters:
-     * mapProjection - {<OpenLayers.Projection>} the map projection
-     * resp - {Object} options to pass to protocol read.
+     * resp - {<OpenLayers.Protocol.Response>} The response object passed
+     *      by the protocol.
      */
-    merge: function(mapProjection, resp) {
+    merge: function(resp) {
         var layer = this.layer;
         layer.destroyFeatures();
         var features = resp.features;
         if (features && features.length > 0) {
-            if(!mapProjection.equals(layer.projection)) {
+            var remote = layer.projection;
+            var local = layer.map.getProjectionObject();
+            if(!local.equals(remote)) {
                 var geom;
                 for(var i=0, len=features.length; i<len; ++i) {
                     geom = features[i].geometry;
                     if(geom) {
-                        geom.transform(layer.projection, mapProjection);
+                        geom.transform(remote, local);
                     }
                 }
             }
             layer.addFeatures(features);
         }
-        layer.events.triggerEvent("loadend");
+        layer.events.triggerEvent("loadend", {response: resp});
     },
 
     CLASS_NAME: "OpenLayers.Strategy.Fixed"
diff --git a/lib/OpenLayers/Strategy/Paging.js b/lib/OpenLayers/Strategy/Paging.js
index 649c14c..22154fa 100644
--- a/lib/OpenLayers/Strategy/Paging.js
+++ b/lib/OpenLayers/Strategy/Paging.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Strategy/Refresh.js b/lib/OpenLayers/Strategy/Refresh.js
index b513a2c..cca187c 100644
--- a/lib/OpenLayers/Strategy/Refresh.js
+++ b/lib/OpenLayers/Strategy/Refresh.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -79,6 +79,10 @@ OpenLayers.Strategy.Refresh = OpenLayers.Class(OpenLayers.Strategy, {
         var deactivated = OpenLayers.Strategy.prototype.deactivate.call(this);
         if(deactivated) {
             this.stop();
+            this.layer.events.un({
+                "visibilitychanged": this.reset,
+                scope: this
+            });
         }
         return deactivated;
     },
diff --git a/lib/OpenLayers/Strategy/Save.js b/lib/OpenLayers/Strategy/Save.js
index 8a82573..2211e95 100644
--- a/lib/OpenLayers/Strategy/Save.js
+++ b/lib/OpenLayers/Strategy/Save.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Style.js b/lib/OpenLayers/Style.js
index d33d79d..39c4a48 100644
--- a/lib/OpenLayers/Style.js
+++ b/lib/OpenLayers/Style.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -61,7 +61,7 @@ OpenLayers.Style = OpenLayers.Class({
     rules: null,
     
     /**
-     * Property: context
+     * APIProperty: context
      * {Object} An optional object with properties that symbolizers' property
      * values should be evaluated against. If no context is specified,
      * feature.attributes will be used
diff --git a/lib/OpenLayers/Style2.js b/lib/OpenLayers/Style2.js
index cf45526..672dae9 100644
--- a/lib/OpenLayers/Style2.js
+++ b/lib/OpenLayers/Style2.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/StyleMap.js b/lib/OpenLayers/StyleMap.js
index 1218983..b6daca2 100644
--- a/lib/OpenLayers/StyleMap.js
+++ b/lib/OpenLayers/StyleMap.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Symbolizer.js b/lib/OpenLayers/Symbolizer.js
index 87b2484..e0d54e8 100644
--- a/lib/OpenLayers/Symbolizer.js
+++ b/lib/OpenLayers/Symbolizer.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Symbolizer/Line.js b/lib/OpenLayers/Symbolizer/Line.js
index 453d3d0..41203e5 100644
--- a/lib/OpenLayers/Symbolizer/Line.js
+++ b/lib/OpenLayers/Symbolizer/Line.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Symbolizer/Point.js b/lib/OpenLayers/Symbolizer/Point.js
index e7d3cee..fa9d932 100644
--- a/lib/OpenLayers/Symbolizer/Point.js
+++ b/lib/OpenLayers/Symbolizer/Point.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Symbolizer/Polygon.js b/lib/OpenLayers/Symbolizer/Polygon.js
index 4707577..e4158c8 100644
--- a/lib/OpenLayers/Symbolizer/Polygon.js
+++ b/lib/OpenLayers/Symbolizer/Polygon.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Symbolizer/Raster.js b/lib/OpenLayers/Symbolizer/Raster.js
index b8228be..cf87a42 100644
--- a/lib/OpenLayers/Symbolizer/Raster.js
+++ b/lib/OpenLayers/Symbolizer/Raster.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Symbolizer/Text.js b/lib/OpenLayers/Symbolizer/Text.js
index 2537407..10dab20 100644
--- a/lib/OpenLayers/Symbolizer/Text.js
+++ b/lib/OpenLayers/Symbolizer/Text.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
diff --git a/lib/OpenLayers/Tile.js b/lib/OpenLayers/Tile.js
index f800a61..b3d1ba5 100644
--- a/lib/OpenLayers/Tile.js
+++ b/lib/OpenLayers/Tile.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -193,22 +193,23 @@ OpenLayers.Tile = OpenLayers.Class({
      *     is to call <clear> and return the result from <shouldDraw>.
      *
      * Parameters:
-     * deferred - {Boolean} When drawing was aborted by returning false from a
-     *     *beforedraw* listener, the queue manager needs to pass true, so the
-     *     tile will not be cleared and immediately be drawn. Otherwise, the
-     *     tile will be cleared and a *beforedraw* event will be fired.
+     * force - {Boolean} If true, the tile will not be cleared and no beforedraw
+     *     event will be fired. This is used for drawing tiles asynchronously
+     *     after drawing has been cancelled by returning false from a beforedraw
+     *     listener.
      * 
      * Returns:
-     * {Boolean} Whether or not the tile should actually be drawn.
+     * {Boolean} Whether or not the tile should actually be drawn. Returns null
+     *     if a beforedraw listener returned false.
      */
-    draw: function(deferred) {
-        if (!deferred) {
+    draw: function(force) {
+        if (!force) {
             //clear tile's contents and mark as not drawn
             this.clear();
         }
         var draw = this.shouldDraw();
-        if (draw && !deferred) {
-            draw = this.events.triggerEvent("beforedraw") !== false;
+        if (draw && !force && this.events.triggerEvent("beforedraw") === false) {
+            draw = null;
         }
         return draw;
     },
diff --git a/lib/OpenLayers/Tile/Image.js b/lib/OpenLayers/Tile/Image.js
index 50c2548..4db5ff8 100644
--- a/lib/OpenLayers/Tile/Image.js
+++ b/lib/OpenLayers/Tile/Image.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -7,6 +7,7 @@
 /**
  * @requires OpenLayers/Tile.js
  * @requires OpenLayers/Animation.js
+ * @requires OpenLayers/Util.js
  */
 
 /**
@@ -20,6 +21,23 @@
  */
 OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
 
+    /**
+     * APIProperty: events
+     * {<OpenLayers.Events>} An events object that handles all 
+     *     events on the tile.
+     *
+     * Register a listener for a particular event with the following syntax:
+     * (code)
+     * tile.events.register(type, obj, listener);
+     * (end)
+     *
+     * Supported event types (in addition to the <OpenLayers.Tile> events):
+     * beforeload - Triggered before an image is prepared for loading, when the
+     *     url for the image is known already. Listeners may call <setImage> on
+     *     the tile instance. If they do so, that image will be used and no new
+     *     one will be created.
+     */
+
     /** 
      * APIProperty: url
      * {String} The URL of the image being requested. No default. Filled in by
@@ -61,14 +79,6 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
     asyncRequestId: null,
     
     /**
-     * Property: blankImageUrl
-     * {String} Using a data scheme url is not supported by all browsers, but
-     * we don't care because we either set it as css backgroundImage, or the
-     * image's display style is set to "none" when we use it.
-     */
-    blankImageUrl: "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAQAIBRAA7",
-
-    /**
      * APIProperty: maxGetUrlLength
      * {Number} If set, requests that would result in GET urls with more
      * characters than the number provided will be made using form-encoded
@@ -154,11 +164,12 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
      * Check that a tile should be drawn, and draw it.
      * 
      * Returns:
-     * {Boolean} Was a tile drawn?
+     * {Boolean} Was a tile drawn? Or null if a beforedraw listener returned
+     *     false.
      */
     draw: function() {
-        var drawn = OpenLayers.Tile.prototype.draw.apply(this, arguments);
-        if (drawn) {
+        var shouldDraw = OpenLayers.Tile.prototype.draw.apply(this, arguments);
+        if (shouldDraw) {
             // The layer's reproject option is deprecated.
             if (this.layer != this.layer.map.baseLayer && this.layer.reproject) {
                 // getBoundsFromBaseLayer is defined in deprecated.js.
@@ -166,17 +177,17 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
             }
             if (this.isLoading) {
                 //if we're already loading, send 'reload' instead of 'loadstart'.
-                this._loadEvent = "reload"; 
+                this._loadEvent = "reload";
             } else {
                 this.isLoading = true;
                 this._loadEvent = "loadstart";
             }
-            this.positionTile();
             this.renderTile();
-        } else {
+            this.positionTile();
+        } else if (shouldDraw === false) {
             this.unload();
         }
-        return drawn;
+        return shouldDraw;
     },
     
     /**
@@ -185,7 +196,6 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
      *     position it correctly, and set its url.
      */
     renderTile: function() {
-        this.layer.div.appendChild(this.getTile());
         if (this.layer.async) {
             // Asynchronous image requests call the asynchronous getURL method
             // on the layer to fetch an image that covers 'this.bounds'.
@@ -212,11 +222,15 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
     positionTile: function() {
         var style = this.getTile().style,
             size = this.frame ? this.size :
-                                this.layer.getImageSize(this.bounds);
-        style.left = this.position.x + "%";
-        style.top = this.position.y + "%";
-        style.width = size.w + "%";
-        style.height = size.h + "%";
+                this.layer.getImageSize(this.bounds),
+            ratio = 1;
+        if (this.layer instanceof OpenLayers.Layer.Grid) {
+            ratio = this.layer.getServerResolution() / this.layer.map.getResolution();
+        }
+        style.left = this.position.x + "px";
+        style.top = this.position.y + "px";
+        style.width = Math.round(ratio * size.w) + "px";
+        style.height = Math.round(ratio * size.h) + "px";
     },
 
     /** 
@@ -228,7 +242,6 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
         OpenLayers.Tile.prototype.clear.apply(this, arguments);
         var img = this.imgDiv;
         if (img) {
-            OpenLayers.Event.stopObservingElement(img);
             var tile = this.getTile();
             if (tile.parentNode === this.layer.div) {
                 this.layer.div.removeChild(tile);
@@ -248,11 +261,7 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
      */
     getImage: function() {
         if (!this.imgDiv) {
-            this.imgDiv = document.createElement("img");
-
-            this.imgDiv.className = "olTileImage";
-            // avoid image gallery menu in IE6
-            this.imgDiv.galleryImg = "no";
+            this.imgDiv = OpenLayers.Tile.Image.IMAGE.cloneNode(false);
 
             var style = this.imgDiv.style;
             if (this.frame) {
@@ -287,46 +296,45 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
 
         return this.imgDiv;
     },
+    
+    /**
+     * APIMethod: setImage
+     * Sets the image element for this tile. This method should only be called
+     * from beforeload listeners.
+     *
+     * Parameters
+     * img - {HTMLImageElement} The image to use for this tile.
+     */
+    setImage: function(img) {
+        this.imgDiv = img;
+    },
 
     /**
      * Method: initImage
      * Creates the content for the frame on the tile.
      */
     initImage: function() {
+        this.events.triggerEvent('beforeload');
+        this.layer.div.appendChild(this.getTile());
         this.events.triggerEvent(this._loadEvent);
         var img = this.getImage();
-        if (this.url && img.getAttribute("src") == this.url) {
-            this.onImageLoad();
+        if (this.url && OpenLayers.Util.isEquivalentUrl(img.src, this.url)) {
+            this._loadTimeout = window.setTimeout(
+                OpenLayers.Function.bind(this.onImageLoad, this), 0
+            );
         } else {
-            // We need to start with a blank image, to make sure that no
-            // loading image placeholder and no old image is displayed when we
-            // set the display style to "" in onImageLoad, which is called
-            // after the image is loaded, but before it is rendered. So we set
-            // a blank image with a data scheme URI, and register for the load
-            // event (for browsers that support data scheme) and the error
-            // event (for browsers that don't). In the event handler, we set
-            // the final src.
-            var load = OpenLayers.Function.bind(function() {
-                OpenLayers.Event.stopObservingElement(img);
-                OpenLayers.Event.observe(img, "load",
-                    OpenLayers.Function.bind(this.onImageLoad, this)
-                );
-                OpenLayers.Event.observe(img, "error",
-                    OpenLayers.Function.bind(this.onImageError, this)
-                );
-                this.imageReloadAttempts = 0;
-                this.setImgSrc(this.url);
-            }, this);
-            if (img.getAttribute("src") == this.blankImageUrl) {
-                load();
-            } else {
-                OpenLayers.Event.observe(img, "load", load);
-                OpenLayers.Event.observe(img, "error", load);
-                if (this.crossOriginKeyword) {
-                    img.removeAttribute("crossorigin");
-                }
-                img.src = this.blankImageUrl;
+            this.stopLoading();
+            if (this.crossOriginKeyword) {
+                img.removeAttribute("crossorigin");
             }
+            OpenLayers.Event.observe(img, "load",
+                OpenLayers.Function.bind(this.onImageLoad, this)
+            );
+            OpenLayers.Event.observe(img, "error",
+                OpenLayers.Function.bind(this.onImageError, this)
+            );
+            this.imageReloadAttempts = 0;
+            this.setImgSrc(this.url);
         }
     },
     
@@ -339,9 +347,9 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
      */
     setImgSrc: function(url) {
         var img = this.imgDiv;
-        img.style.visibility = 'hidden';
-        img.style.opacity = 0;
         if (url) {
+            img.style.visibility = 'hidden';
+            img.style.opacity = 0;
             // don't set crossOrigin if the url is a data URL
             if (this.crossOriginKeyword) {
                 if (url.substr(0, 5) !== 'data:') {
@@ -351,6 +359,14 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
                 }
             }
             img.src = url;
+        } else {
+            // Remove reference to the image, and leave it to the browser's
+            // caching and garbage collection.
+            this.stopLoading();
+            this.imgDiv = null;
+            if (img.parentNode) {
+                img.parentNode.removeChild(img);
+            }
         }
     },
     
@@ -396,29 +412,13 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
      */
     onImageLoad: function() {
         var img = this.imgDiv;
-        OpenLayers.Event.stopObservingElement(img);
-
+        this.stopLoading();
         img.style.visibility = 'inherit';
         img.style.opacity = this.layer.opacity;
-
         this.isLoading = false;
         this.canvasContext = null;
         this.events.triggerEvent("loadend");
 
-        // IE<7 needs a reflow when the tiles are loaded because of the
-        // percentage based positioning. Otherwise nothing is shown
-        // until the user interacts with the map in some way.
-        if (parseFloat(navigator.appVersion.split("MSIE")[1]) < 7 &&
-                this.layer && this.layer.div) {
-            var span = document.createElement("span");
-            span.style.display = "none";
-            var layerDiv = this.layer.div;
-            layerDiv.appendChild(span);
-            window.setTimeout(function() {
-                span.parentNode === layerDiv && span.parentNode.removeChild(span);
-            }, 0);
-        }
-
         if (this.layerAlphaHack === true) {
             img.style.filter =
                 "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" +
@@ -443,6 +443,16 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
             }
         }
     },
+    
+    /**
+     * Method: stopLoading
+     * Stops a loading sequence so <onImageLoad> won't be executed.
+     */
+    stopLoading: function() {
+        OpenLayers.Event.stopObservingElement(this.imgDiv);
+        window.clearTimeout(this._loadTimeout);
+        delete this._loadTimeout;
+    },
 
     /**
      * APIMethod: getCanvasContext
@@ -479,3 +489,16 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, {
     CLASS_NAME: "OpenLayers.Tile.Image"
 
 });
+
+/** 
+ * Constant: OpenLayers.Tile.Image.IMAGE
+ * {HTMLImageElement} The image for a tile.
+ */
+OpenLayers.Tile.Image.IMAGE = (function() {
+    var img = new Image();
+    img.className = "olTileImage";
+    // avoid image gallery menu in IE6
+    img.galleryImg = "no";
+    return img;
+}());
+
diff --git a/lib/OpenLayers/Tile/Image/IFrame.js b/lib/OpenLayers/Tile/Image/IFrame.js
index f3e408e..9e33acc 100644
--- a/lib/OpenLayers/Tile/Image/IFrame.js
+++ b/lib/OpenLayers/Tile/Image/IFrame.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -26,6 +26,14 @@ OpenLayers.Tile.Image.IFrame = {
     useIFrame: null,
 
     /**
+     * Property: blankImageUrl
+     * {String} Using a data scheme url is not supported by all browsers, but
+     * we don't care because we either set it as css backgroundImage, or the
+     * image's display style is set to "none" when we use it.
+     */
+    blankImageUrl: "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAQAIBRAA7",
+
+    /**
      * Method: draw
      * Set useIFrame in the instance, and operate the image/iframe switch.
      * Then call Tile.Image.draw.
@@ -65,11 +73,7 @@ OpenLayers.Tile.Image.IFrame = {
                 // And if we had an iframe we also remove the event pane.
 
                 if(fromIFrame) {
-                    this.blankImageUrl = this._blankImageUrl;
                     this.frame.removeChild(this.frame.firstChild);
-                } else {
-                    this._blankImageUrl = this.blankImageUrl;
-                    this.blankImageUrl = "about:blank";
                 }
             }
         }
@@ -89,7 +93,7 @@ OpenLayers.Tile.Image.IFrame = {
                 style.width = "100%";
                 style.height = "100%";
                 style.zIndex = 1;
-                style.backgroundImage = "url(" + this._blankImageUrl + ")";
+                style.backgroundImage = "url(" + this.blankImageUrl + ")";
                 this.frame.appendChild(eventPane);
             }
 
diff --git a/lib/OpenLayers/Tile/UTFGrid.js b/lib/OpenLayers/Tile/UTFGrid.js
index 1b3708c..2836ee0 100644
--- a/lib/OpenLayers/Tile/UTFGrid.js
+++ b/lib/OpenLayers/Tile/UTFGrid.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -7,6 +7,7 @@
 /**
  * @requires OpenLayers/Tile.js
  * @requires OpenLayers/Format/JSON.js
+ * @requires OpenLayers/Request.js
  */
 
 /**
diff --git a/lib/OpenLayers/TileManager.js b/lib/OpenLayers/TileManager.js
new file mode 100644
index 0000000..6904b15
--- /dev/null
+++ b/lib/OpenLayers/TileManager.js
@@ -0,0 +1,460 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+
+/**
+ * @requires OpenLayers/Util.js
+ * @requires OpenLayers/BaseTypes.js
+ * @requires OpenLayers/BaseTypes/Element.js
+ */
+
+/**
+ * Class: OpenLayers.TileManager
+ * Provides queueing of image requests and caching of image elements.
+ *
+ * Queueing avoids unnecessary image requests while changing zoom levels
+ * quickly, and helps improve dragging performance on mobile devices that show
+ * a lag in dragging when loading of new images starts. <zoomDelay> and
+ * <moveDelay> are the configuration options to control this behavior.
+ *
+ * Caching avoids setting the src on image elements for images that have already
+ * been used. Several maps can share a TileManager instance, in which case each
+ * map gets its own tile queue, but all maps share the same tile cache.
+ */
+OpenLayers.TileManager = OpenLayers.Class({
+    
+    /**
+     * APIProperty: cacheSize
+     * {Number} Number of image elements to keep referenced in this instance's
+     * cache for fast reuse. Default is 256.
+     */
+    cacheSize: 256,
+
+    /**
+     * APIProperty: tilesPerFrame
+     * {Number} Number of queued tiles to load per frame (see <frameDelay>).
+     *     Default is 2.
+     */
+    tilesPerFrame: 2,
+
+    /**
+     * APIProperty: frameDelay
+     * {Number} Delay between tile loading frames (see <tilesPerFrame>) in
+     *     milliseconds. Default is 16.
+     */
+    frameDelay: 16,
+
+    /**
+     * APIProperty: moveDelay
+     * {Number} Delay in milliseconds after a map's move event before loading
+     * tiles. Default is 100.
+     */
+    moveDelay: 100,
+    
+    /**
+     * APIProperty: zoomDelay
+     * {Number} Delay in milliseconds after a map's zoomend event before loading
+     * tiles. Default is 200.
+     */
+    zoomDelay: 200,
+    
+    /**
+     * Property: maps
+     * {Array(<OpenLayers.Map>)} The maps to manage tiles on.
+     */
+    maps: null,
+    
+    /**
+     * Property: tileQueueId
+     * {Object} The ids of the <drawTilesFromQueue> loop, keyed by map id.
+     */
+    tileQueueId: null,
+
+    /**
+     * Property: tileQueue
+     * {Object(Array(<OpenLayers.Tile>))} Tiles queued for drawing, keyed by
+     * map id.
+     */
+    tileQueue: null,
+    
+    /**
+     * Property: tileCache
+     * {Object} Cached image elements, keyed by URL.
+     */
+    tileCache: null,
+    
+    /**
+     * Property: tileCacheIndex
+     * {Array(String)} URLs of cached tiles. First entry is the least recently
+     *    used.
+     */
+    tileCacheIndex: null,    
+    
+    /** 
+     * Constructor: OpenLayers.TileManager
+     * Constructor for a new <OpenLayers.TileManager> instance.
+     * 
+     * Parameters:
+     * options - {Object} Configuration for this instance.
+     */   
+    initialize: function(options) {
+        OpenLayers.Util.extend(this, options);
+        this.maps = [];
+        this.tileQueueId = {};
+        this.tileQueue = {};
+        this.tileCache = {};
+        this.tileCacheIndex = [];
+    },
+    
+    /**
+     * Method: addMap
+     * Binds this instance to a map
+     *
+     * Parameters:
+     * map - {<OpenLayers.Map>}
+     */
+    addMap: function(map) {
+        if (this._destroyed || !OpenLayers.Layer.Grid) {
+            return;
+        }
+        this.maps.push(map);
+        this.tileQueue[map.id] = [];
+        for (var i=0, ii=map.layers.length; i<ii; ++i) {
+            this.addLayer({layer: map.layers[i]});
+        }
+        map.events.on({
+            move: this.move,
+            zoomend: this.zoomEnd,
+            changelayer: this.changeLayer,
+            addlayer: this.addLayer,
+            preremovelayer: this.removeLayer,
+            scope: this
+        });
+    },
+    
+    /**
+     * Method: removeMap
+     * Unbinds this instance from a map
+     *
+     * Parameters:
+     * map - {<OpenLayers.Map>}
+     */
+    removeMap: function(map) {
+        if (this._destroyed || !OpenLayers.Layer.Grid) {
+            return;
+        }
+        window.clearTimeout(this.tileQueueId[map.id]);
+        if (map.layers) {
+            for (var i=0, ii=map.layers.length; i<ii; ++i) {
+                this.removeLayer({layer: map.layers[i]});
+            }
+        }
+        if (map.events) {
+            map.events.un({
+                move: this.move,
+                zoomend: this.zoomEnd,
+                changelayer: this.changeLayer,
+                addlayer: this.addLayer,
+                preremovelayer: this.removeLayer,
+                scope: this
+            });
+        }
+        delete this.tileQueue[map.id];
+        delete this.tileQueueId[map.id];
+        OpenLayers.Util.removeItem(this.maps, map);
+    },
+    
+    /**
+     * Method: move
+     * Handles the map's move event
+     *
+     * Parameters:
+     * evt - {Object} Listener argument
+     */
+    move: function(evt) {
+        this.updateTimeout(evt.object, this.moveDelay, true);
+    },
+    
+    /**
+     * Method: zoomEnd
+     * Handles the map's zoomEnd event
+     *
+     * Parameters:
+     * evt - {Object} Listener argument
+     */
+    zoomEnd: function(evt) {
+        this.updateTimeout(evt.object, this.zoomDelay);
+    },
+    
+    /**
+     * Method: changeLayer
+     * Handles the map's changeLayer event
+     *
+     * Parameters:
+     * evt - {Object} Listener argument
+     */
+    changeLayer: function(evt) {
+        if (evt.property === 'visibility' || evt.property === 'params') {
+            this.updateTimeout(evt.object, 0);
+        }
+    },
+    
+    /**
+     * Method: addLayer
+     * Handles the map's addlayer event
+     *
+     * Parameters:
+     * evt - {Object} The listener argument
+     */
+    addLayer: function(evt) {
+        var layer = evt.layer;
+        if (layer instanceof OpenLayers.Layer.Grid) {
+            layer.events.on({
+                addtile: this.addTile,
+                retile: this.clearTileQueue,
+                scope: this
+            });
+            var i, j, tile;
+            for (i=layer.grid.length-1; i>=0; --i) {
+                for (j=layer.grid[i].length-1; j>=0; --j) {
+                    tile = layer.grid[i][j];
+                    this.addTile({tile: tile});
+                    if (tile.url) {
+                        this.manageTileCache({object: tile});
+                    }
+                }
+            }
+        }
+    },
+    
+    /**
+     * Method: removeLayer
+     * Handles the map's preremovelayer event
+     *
+     * Parameters:
+     * evt - {Object} The listener argument
+     */
+    removeLayer: function(evt) {
+        var layer = evt.layer;
+        if (layer instanceof OpenLayers.Layer.Grid) {
+            this.clearTileQueue({object: layer});
+            if (layer.events) {
+                layer.events.un({
+                    addtile: this.addTile,
+                    retile: this.clearTileQueue,
+                    scope: this
+                });
+            }
+            if (layer.grid) {
+                var i, j, tile;
+                for (i=layer.grid.length-1; i>=0; --i) {
+                    for (j=layer.grid[i].length-1; j>=0; --j) {
+                        tile = layer.grid[i][j];
+                        this.unloadTile({object: tile});
+                        if (tile.url) {
+                            this.manageTileCache({object: tile});
+                        }
+                    }
+                }
+            }
+        }
+    },
+    
+    /**
+     * Method: updateTimeout
+     * Applies the <moveDelay> or <zoomDelay> to the <drawTilesFromQueue> loop,
+     * and schedules more queue processing after <frameDelay> if there are still
+     * tiles in the queue.
+     *
+     * Parameters:
+     * map - {<OpenLayers.Map>} The map to update the timeout for
+     * delay - {Number} The delay to apply
+     * nice - {Boolean} If true, the timeout function will only be created if
+     *     the tilequeue is not empty. This is used by the move handler to
+     *     avoid impacts on dragging performance. For other events, the tile
+     *     queue may not be populated yet, so we need to set the timer
+     *     regardless of the queue size.
+     */
+    updateTimeout: function(map, delay, nice) {
+        window.clearTimeout(this.tileQueueId[map.id]);
+        var tileQueue = this.tileQueue[map.id];
+        if (!nice || tileQueue.length) {
+            this.tileQueueId[map.id] = window.setTimeout(
+                OpenLayers.Function.bind(function() {
+                    this.drawTilesFromQueue(map);
+                    if (tileQueue.length) {
+                        this.updateTimeout(map, this.frameDelay);
+                    }
+                }, this), delay
+            );
+        }
+    },
+    
+    /**
+     * Method: addTile
+     * Listener for the layer's addtile event
+     *
+     * Parameters:
+     * evt - {Object} The listener argument
+     */
+    addTile: function(evt) {
+        evt.tile.events.on({
+            beforedraw: this.queueTileDraw,
+            beforeload: this.manageTileCache,
+            loadend: this.addToCache,
+            unload: this.unloadTile,
+            scope: this
+        });        
+    },
+    
+    /**
+     * Method: unloadTile
+     * Listener for the tile's unload event
+     *
+     * Parameters:
+     * evt - {Object} The listener argument
+     */
+    unloadTile: function(evt) {
+        var tile = evt.object;
+        tile.events.un({
+            beforedraw: this.queueTileDraw,
+            beforeload: this.manageTileCache,
+            loadend: this.addToCache,
+            unload: this.unloadTile,
+            scope: this
+        });
+        OpenLayers.Util.removeItem(this.tileQueue[tile.layer.map.id], tile);
+    },
+    
+    /**
+     * Method: queueTileDraw
+     * Adds a tile to the queue that will draw it.
+     *
+     * Parameters:
+     * evt - {Object} Listener argument of the tile's beforedraw event
+     */
+    queueTileDraw: function(evt) {
+        var tile = evt.object;
+        var queued = false;
+        var layer = tile.layer;
+        var url = layer.getURL(tile.bounds);
+        var img = this.tileCache[url];
+        if (img && img.className !== 'olTileImage') {
+            // cached image no longer valid, e.g. because we're olTileReplacing
+            delete this.tileCache[url];
+            OpenLayers.Util.removeItem(this.tileCacheIndex, url);
+            img = null;
+        }
+        // queue only if image with same url not cached already
+        if (layer.url && (layer.async || !img)) {
+            // add to queue only if not in queue already
+            var tileQueue = this.tileQueue[layer.map.id];
+            if (!~OpenLayers.Util.indexOf(tileQueue, tile)) {
+                tileQueue.push(tile);
+            }
+            queued = true;
+        }
+        return !queued;
+    },
+    
+    /**
+     * Method: drawTilesFromQueue
+     * Draws tiles from the tileQueue, and unqueues the tiles
+     */
+    drawTilesFromQueue: function(map) {
+        var tileQueue = this.tileQueue[map.id];
+        var limit = this.tilesPerFrame;
+        var animating = map.zoomTween && map.zoomTween.playing;
+        while (!animating && tileQueue.length && limit) {
+            tileQueue.shift().draw(true);
+            --limit;
+        }
+    },
+    
+    /**
+     * Method: manageTileCache
+     * Adds, updates, removes and fetches cache entries.
+     *
+     * Parameters:
+     * evt - {Object} Listener argument of the tile's beforeload event
+     */
+    manageTileCache: function(evt) {
+        var tile = evt.object;
+        var img = this.tileCache[tile.url];
+        // only use image from cache if it is not on a layer already
+        if (img && (!img.parentNode ||
+                 OpenLayers.Element.hasClass(img.parentNode, 'olBackBuffer'))) {
+            if (tile.layer.backBuffer) {
+                if (tile.layer.backBuffer === img.parentNode) {
+                    // cached image is on the target layer's backbuffer already,
+                    // so nothing to do here
+                    return;
+                }
+                img.style.opacity = 0;
+                img.style.visibility = 'hidden';
+            }
+            // Only backbuffer tiles have an id, so we don't want one here
+            img.id = null;
+            tile.setImage(img);
+            // LRU - move tile to the end of the array to mark it as the most
+            // recently used
+            OpenLayers.Util.removeItem(this.tileCacheIndex, tile.url);
+            this.tileCacheIndex.push(tile.url);
+        }
+    },
+    
+    /**
+     * Method: addToCache
+     *
+     * Parameters:
+     * evt - {Object} Listener argument for the tile's loadend event
+     */
+    addToCache: function(evt) {
+        var tile = evt.object;
+        if (!this.tileCache[tile.url]) {
+            if (!OpenLayers.Element.hasClass(tile.imgDiv, 'olImageLoadError')) {
+                if (this.tileCacheIndex.length >= this.cacheSize) {
+                    delete this.tileCache[this.tileCacheIndex[0]];
+                    this.tileCacheIndex.shift();
+                }
+                this.tileCache[tile.url] = tile.imgDiv;
+                this.tileCacheIndex.push(tile.url);
+            }
+        }
+    },
+
+    /**
+     * Method: clearTileQueue
+     * Clears the tile queue from tiles of a specific layer
+     *
+     * Parameters:
+     * evt - {Object} Listener argument of the layer's retile event
+     */
+    clearTileQueue: function(evt) {
+        var layer = evt.object;
+        var tileQueue = this.tileQueue[layer.map.id];
+        for (var i=tileQueue.length-1; i>=0; --i) {
+            if (tileQueue[i].layer === layer) {
+                tileQueue.splice(i, 1);
+            }
+        }
+    },
+    
+    /**
+     * Method: destroy
+     */
+    destroy: function() {
+        for (var i=this.maps.length-1; i>=0; --i) {
+            this.removeMap(this.maps[i]);
+        }
+        this.maps = null;
+        this.tileQueue = null;
+        this.tileQueueId = null;
+        this.tileCache = null;
+        this.tileCacheIndex = null;
+        this._destroyed = true;
+    }
+
+});
diff --git a/lib/OpenLayers/Tween.js b/lib/OpenLayers/Tween.js
index 4e50438..0432dad 100644
--- a/lib/OpenLayers/Tween.js
+++ b/lib/OpenLayers/Tween.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -53,6 +53,22 @@ OpenLayers.Tween = OpenLayers.Class({
     time: null,
     
     /**
+     * APIProperty: minFrameRate
+     * {Number} The minimum framerate for animations in frames per second. After
+     * each step, the time spent in the animation is compared to the calculated
+     * time at this frame rate. If the animation runs longer than the calculated
+     * time, the next step is skipped. Default is 30.
+     */
+    minFrameRate: null,
+
+    /**
+     * Property: startTime
+     * {Number} The timestamp of the first execution step. Used for skipping
+     * frames
+     */
+    startTime: null,
+    
+    /**
      * Property: animationId
      * {int} Loop id returned by OpenLayers.Animation.start
      */
@@ -83,7 +99,8 @@ OpenLayers.Tween = OpenLayers.Class({
      * begin - {Object} values to start the animation with
      * finish - {Object} values to finish the animation with
      * duration - {int} duration of the tween (number of steps)
-     * options - {Object} hash of options (for example callbacks (start, eachStep, done))
+     * options - {Object} hash of options (callbacks (start, eachStep, done),
+     *     minFrameRate)
      */
     start: function(begin, finish, duration, options) {
         this.playing = true;
@@ -91,7 +108,9 @@ OpenLayers.Tween = OpenLayers.Class({
         this.finish = finish;
         this.duration = duration;
         this.callbacks = options.callbacks;
+        this.minFrameRate = options.minFrameRate || 30;
         this.time = 0;
+        this.startTime = new Date().getTime();
         OpenLayers.Animation.stop(this.animationId);
         this.animationId = null;
         if (this.callbacks && this.callbacks.start) {
@@ -139,7 +158,10 @@ OpenLayers.Tween = OpenLayers.Class({
         this.time++;
         
         if (this.callbacks && this.callbacks.eachStep) {
-            this.callbacks.eachStep.call(this, value);
+            // skip frames if frame rate drops below threshold
+            if ((new Date().getTime() - this.startTime) / this.time <= 1000 / this.minFrameRate) {
+                this.callbacks.eachStep.call(this, value);
+            }
         }
         
         if (this.time > this.duration) {
diff --git a/lib/OpenLayers/Util.js b/lib/OpenLayers/Util.js
index 8e326a3..f659d3e 100644
--- a/lib/OpenLayers/Util.js
+++ b/lib/OpenLayers/Util.js
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2012 by OpenLayers Contributors (see authors.txt for 
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the 2-clause BSD license.
  * See license.txt in the OpenLayers distribution or repository for the
  * full text of the license. */
@@ -71,17 +71,10 @@ OpenLayers.Util.isElement = function(o) {
  * {Boolean} true if the object is an array.
  */
 OpenLayers.Util.isArray = function(a) {
-	return (Object.prototype.toString.call(a) === '[object Array]');
+    return (Object.prototype.toString.call(a) === '[object Array]');
 };
 
 /** 
- * Maintain existing definition of $.
- */
-if(typeof window.$  === "undefined") {
-    window.$ = OpenLayers.Util.getElement;
-}
-
-/** 
  * Function: removeItem
  * Remove an object from an array. Iterates through the array
  *     to find the item, then removes it.
@@ -112,7 +105,7 @@ OpenLayers.Util.removeItem = function(array, item) {
  * obj - {*}
  * 
  * Returns:
- * {Integer} The index at, which the first object was found in the array.
+ * {Integer} The index at which the first object was found in the array.
  *           If not found, returns -1.
  */
 OpenLayers.Util.indexOf = function(array, obj) {
@@ -130,6 +123,17 @@ OpenLayers.Util.indexOf = function(array, obj) {
 };
 
 
+/**
+ * Property: dotless
+ * {RegExp}
+ * Compiled regular expression to match dots (".").  This is used for replacing
+ *     dots in identifiers.  Because object identifiers are frequently used for
+ *     DOM element identifiers by the library, we avoid using dots to make for
+ *     more sensible CSS selectors.
+ *
+ * TODO: Use a module pattern to avoid bloating the API with stuff like this.
+ */
+OpenLayers.Util.dotless = /\./g;
 
 /**
  * Function: modifyDOMElement
@@ -139,7 +143,8 @@ OpenLayers.Util.indexOf = function(array, obj) {
  *
  * Parameters:
  * element - {DOMElement} DOM element to modify.
- * id - {String} The element id attribute to set.
+ * id - {String} The element id attribute to set.  Note that dots (".") will be
+ *     replaced with underscore ("_") in setting the element id.
  * px - {<OpenLayers.Pixel>|Object} The element left and top position,
  *                                  OpenLayers.Pixel or an object with
  *                                  a 'x' and 'y' properties.
@@ -157,7 +162,7 @@ OpenLayers.Util.modifyDOMElement = function(element, id, px, sz, position,
                                             border, overflow, opacity) {
 
     if (id) {
-        element.id = id;
+        element.id = id.replace(OpenLayers.Util.dotless, "_");
     }
     if (px) {
         element.style.left = px.x + "px";
@@ -195,7 +200,8 @@ OpenLayers.Util.modifyDOMElement = function(element, id, px, sz, position,
  * Parameters:
  * id - {String} An identifier for this element.  If no id is
  *               passed an identifier will be created 
- *               automatically.
+ *               automatically.  Note that dots (".") will be replaced with
+ *               underscore ("_") when generating ids.
  * px - {<OpenLayers.Pixel>|Object} The element left and top position,
  *                                  OpenLayers.Pixel or an object with
  *                                  a 'x' and 'y' properties.
@@ -860,11 +866,17 @@ OpenLayers.Util.destinationVincenty = function(lonlat, brng, dist) {
  * url - {String} Optional url used to extract the query string.
  *                If url is null or is not supplied, query string is taken 
  *                from the page location.
+ * options - {Object} Additional options. Optional.
+ *
+ * Valid options:
+ *   splitArgs - {Boolean} Split comma delimited params into arrays? Default is
+ *       true.
  * 
  * Returns:
  * {Object} An object of key/value pairs from the query string.
  */
-OpenLayers.Util.getParameters = function(url) {
+OpenLayers.Util.getParameters = function(url, options) {
+    options = options || {};
     // if no url specified, take it from the location bar
     url = (url === null || url === undefined) ? window.location.href : url;
 
@@ -900,7 +912,9 @@ OpenLayers.Util.getParameters = function(url) {
             }
             
             // follow OGC convention of comma delimited values
-            value = value.split(",");
+            if (options.splitArgs !== false) {
+                value = value.split(",");
+            }
 
             //if there's only one value, do not return as array                    
             if (value.length == 1) {
@@ -928,6 +942,7 @@ OpenLayers.Util.lastSeqID = 0;
  * 
  * Parameters:
  * prefix - {String} Optional string to prefix unique id. Default is "id_".
+ *     Note that dots (".") in the prefix will be replaced with underscore ("_").
  * 
  * Returns:
  * {String} A unique id string, built on the passed in prefix.
@@ -935,6 +950,8 @@ OpenLayers.Util.lastSeqID = 0;
 OpenLayers.Util.createUniqueID = function(prefix) {
     if (prefix == null) {
         prefix = "id_";
+    } else {
+        prefix = prefix.replace(OpenLayers.Util.dotless, "_");
     }
     OpenLayers.Util.lastSeqID += 1; 
     return prefix + OpenLayers.Util.lastSeqID;        
@@ -953,8 +970,8 @@ OpenLayers.INCHES_PER_UNIT = {
     'inches': 1.0,
     'ft': 12.0,
     'mi': 63360.0,
-    'm': 39.3701,
-    'km': 39370.1,
+    'm': 39.37,
+    'km': 39370,
     'dd': 4374754,
     'yd': 36
 };
@@ -1035,8 +1052,8 @@ OpenLayers.Util.extend(OpenLayers.INCHES_PER_UNIT, {
     "ch": OpenLayers.INCHES_PER_UNIT["IntnlChain"],  //International Chain
     "link": OpenLayers.INCHES_PER_UNIT["IntnlLink"], //International Link
     "us-in": OpenLayers.INCHES_PER_UNIT["inches"], //U.S. Surveyor's Inch
-    "us-ft": OpenLayers.INCHES_PER_UNIT["Foot"],	//U.S. Surveyor's Foot
-    "us-yd": OpenLayers.INCHES_PER_UNIT["Yard"],	//U.S. Surveyor's Yard
+    "us-ft": OpenLayers.INCHES_PER_UNIT["Foot"], //U.S. Surveyor's Foot
+    "us-yd": OpenLayers.INCHES_PER_UNIT["Yard"], //U.S. Surveyor's Yard
     "us-ch": OpenLayers.INCHES_PER_UNIT["GunterChain"], //U.S. Surveyor's Chain
     "us-mi": OpenLayers.INCHES_PER_UNIT["Mile"],   //U.S. Surveyor's Statute Mile
     "ind-yd": OpenLayers.INCHES_PER_UNIT["IndianYd37"],  //Indian Yard
@@ -1186,9 +1203,9 @@ OpenLayers.Util.pagePosition =  function(forElement) {
 
     if (forElement.getBoundingClientRect) { // IE
         box = forElement.getBoundingClientRect();
-        var scrollTop = viewportElement.scrollTop;
-        var scrollLeft = viewportElement.scrollLeft;
-
+        var scrollTop = window.pageYOffset || viewportElement.scrollTop;
+        var scrollLeft = window.pageXOffset || viewportElement.scrollLeft;
+        
         pos[0] = box.left + scrollLeft;
         pos[1] = box.top + scrollTop;
 
@@ -1290,7 +1307,8 @@ OpenLayers.Util.isEquivalentUrl = function(url1, url2, options) {
     OpenLayers.Util.applyDefaults(options, {
         ignoreCase: true,
         ignorePort80: true,
-        ignoreHash: true
+        ignoreHash: true,
+        splitArgs: false
     });
 
     var urlObj1 = OpenLayers.Util.createUrlObject(url1, options);
@@ -1331,6 +1349,8 @@ OpenLayers.Util.isEquivalentUrl = function(url1, url2, options) {
  *   ignoreCase - {Boolean} lowercase url,
  *   ignorePort80 - {Boolean} don't include explicit port if port is 80,
  *   ignoreHash - {Boolean} Don't include part of url after the hash (#).
+ *   splitArgs - {Boolean} Split comma delimited params into arrays? Default is
+ *       true.
  * 
  * Returns:
  * {Object} An object with separate url, a, port, host, and args parsed out 
@@ -1386,7 +1406,8 @@ OpenLayers.Util.createUrlObject = function(url, options) {
         var qMark = url.indexOf("?");
         queryString = (qMark != -1) ? url.substr(qMark) : "";
     }
-    urlObject.args = OpenLayers.Util.getParameters(queryString);
+    urlObject.args = OpenLayers.Util.getParameters(queryString,
+            {splitArgs: options.splitArgs});
 
     // pathname
     //
@@ -1525,7 +1546,7 @@ OpenLayers.Util.getRenderedDimensions = function(contentHTML, size, options) {
     container.style.visibility = "hidden";
         
     var containerElement = (options && options.containerElement) 
-    	? options.containerElement : document.body;
+        ? options.containerElement : document.body;
     
     // Opera and IE7 can't handle a node with position:aboslute if it inherits
     // position:absolute from a parent.
@@ -1701,9 +1722,9 @@ OpenLayers.Util.getFormattedLonLat = function(coordinate, axis, dmsOption) {
     if (!dmsOption) {
         dmsOption = 'dms';    //default to show degree, minutes, seconds
     }
-	
-	coordinate = (coordinate+540)%360 - 180; // normalize for sphere being round
-	
+
+    coordinate = (coordinate+540)%360 - 180; // normalize for sphere being round
+
     var abscoordinate = Math.abs(coordinate);
     var coordinatedegrees = Math.floor(abscoordinate);
 
diff --git a/lib/OpenLayers/Util/vendorPrefix.js b/lib/OpenLayers/Util/vendorPrefix.js
new file mode 100644
index 0000000..89286d7
--- /dev/null
+++ b/lib/OpenLayers/Util/vendorPrefix.js
@@ -0,0 +1,131 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/SingleFile.js
+ */
+
+OpenLayers.Util = OpenLayers.Util || {};
+/**
+ * Namespace: OpenLayers.Util.vendorPrefix
+ * A collection of utility functions to detect vendor prefixed features
+ */
+OpenLayers.Util.vendorPrefix = (function() {
+    "use strict";
+    
+    var VENDOR_PREFIXES = ["", "O", "ms", "Moz", "Webkit"],
+        divStyle = document.createElement("div").style,
+        cssCache = {},
+        jsCache = {};
+
+    
+    /**
+     * Function: domToCss
+     * Converts a upper camel case DOM style property name to a CSS property
+     *      i.e. transformOrigin -> transform-origin
+     *      or   WebkitTransformOrigin -> -webkit-transform-origin
+     *
+     * Parameters:
+     * prefixedDom - {String} The property to convert
+     *
+     * Returns:
+     * {String} The CSS property
+     */
+    function domToCss(prefixedDom) {
+        if (!prefixedDom) { return null; }
+        return prefixedDom.
+            replace(/([A-Z])/g, function(c) { return "-" + c.toLowerCase(); }).
+            replace(/^ms-/, "-ms-");
+    }
+
+    /**
+     * APIMethod: css
+     * Detect which property is used for a CSS property
+     *
+     * Parameters:
+     * property - {String} The standard (unprefixed) CSS property name
+     *
+     * Returns:
+     * {String} The standard CSS property, prefixed property or null if not
+     *          supported
+     */
+    function css(property) {
+        if (cssCache[property] === undefined) {
+            var domProperty = property.
+                replace(/(-[\s\S])/g, function(c) { return c.charAt(1).toUpperCase(); });
+            var prefixedDom = style(domProperty);
+            cssCache[property] = domToCss(prefixedDom);
+        }
+        return cssCache[property];
+    }
+
+    /**
+     * APIMethod: js
+     * Detect which property is used for a JS property/method
+     *
+     * Parameters:
+     * obj - {Object} The object to test on
+     * property - {String} The standard (unprefixed) JS property name
+     *
+     * Returns:
+     * {String} The standard JS property, prefixed property or null if not
+     *          supported
+     */
+    function js(obj, property) {
+        if (jsCache[property] === undefined) {
+            var tmpProp,
+                i = 0,
+                l = VENDOR_PREFIXES.length,
+                prefix,
+                isStyleObj = (typeof obj.cssText !== "undefined");
+
+            jsCache[property] = null;
+            for(; i<l; i++) {
+                prefix = VENDOR_PREFIXES[i];
+                if(prefix) {
+                    if (!isStyleObj) {
+                        // js prefix should be lower-case, while style
+                        // properties have upper case on first character
+                        prefix = prefix.toLowerCase();
+                    }
+                    tmpProp = prefix + property.charAt(0).toUpperCase() + property.slice(1);
+                } else {
+                    tmpProp = property;
+                }
+
+                if(obj[tmpProp] !== undefined) {
+                    jsCache[property] = tmpProp;
+                    break;
+                }
+            }
+        }
+        return jsCache[property];
+    }
+    
+    /**
+     * APIMethod: style
+     * Detect which property is used for a DOM style property
+     *
+     * Parameters:
+     * property - {String} The standard (unprefixed) style property name
+     *
+     * Returns:
+     * {String} The standard style property, prefixed property or null if not
+     *          supported
+     */
+    function style(property) {
+        return js(divStyle, property);
+    }
+    
+    return {
+        css:      css,
+        js:       js,
+        style:    style,
+        
+        // used for testing
+        cssCache:       cssCache,
+        jsCache:        jsCache
+    };
+}());
\ No newline at end of file
diff --git a/lib/OpenLayers/WPSClient.js b/lib/OpenLayers/WPSClient.js
new file mode 100644
index 0000000..e0c8c49
--- /dev/null
+++ b/lib/OpenLayers/WPSClient.js
@@ -0,0 +1,223 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/SingleFile.js
+ */
+
+/**
+ * @requires OpenLayers/Events.js
+ * @requires OpenLayers/WPSProcess.js
+ * @requires OpenLayers/Format/WPSDescribeProcess.js
+ * @requires OpenLayers/Request.js
+ */
+
+/**
+ * Class: OpenLayers.WPSClient
+ * High level API for interaction with Web Processing Services (WPS).
+ * An <OpenLayers.WPSClient> instance is used to create <OpenLayers.WPSProcess>
+ * instances for servers known to the WPSClient. The WPSClient also caches
+ * DescribeProcess responses to reduce the number of requests sent to servers
+ * when processes are created.
+ */
+OpenLayers.WPSClient = OpenLayers.Class({
+    
+    /**
+     * Property: servers
+     * {Object} Service metadata, keyed by a local identifier.
+     *
+     * Properties:
+     * url - {String} the url of the server
+     * version - {String} WPS version of the server
+     * processDescription - {Object} Cache of raw DescribeProcess
+     *     responses, keyed by process identifier.
+     */
+    servers: null,
+    
+    /**
+     * Property: version
+     * {String} The default WPS version to use if none is configured. Default
+     *     is '1.0.0'.
+     */
+    version: '1.0.0',
+    
+    /**
+     * Property: lazy
+     * {Boolean} Should the DescribeProcess be deferred until a process is
+     *     fully configured? Default is false.
+     */
+    lazy: false,
+    
+    /**
+     * Property: events
+     * {<OpenLayers.Events>}
+     *
+     * Supported event types:
+     * describeprocess - Fires when the process description is available.
+     *     Listeners receive an object with a 'raw' property holding the raw
+     *     DescribeProcess response, and an 'identifier' property holding the
+     *     process identifier of the described process.
+     */
+    events: null,
+    
+    /**
+     * Constructor: OpenLayers.WPSClient
+     *
+     * Parameters:
+     * options - {Object} Object whose properties will be set on the instance.
+     *
+     * Avaliable options:
+     * servers - {Object} Mandatory. Service metadata, keyed by a local
+     *     identifier. Can either be a string with the service url or an
+     *     object literal with additional metadata:
+     *
+     *     (code)
+     *     servers: {
+     *         local: '/geoserver/wps'
+     *     }, {
+     *         opengeo: {
+     *             url: 'http://demo.opengeo.org/geoserver/wps',
+     *             version: '1.0.0'
+     *         }
+     *     }
+     *     (end)
+     *
+     * lazy - {Boolean} Optional. Set to true if DescribeProcess should not be
+     *     requested until a process is fully configured. Default is false.
+     */
+    initialize: function(options) {
+        OpenLayers.Util.extend(this, options);
+        this.events = new OpenLayers.Events(this);
+        this.servers = {};
+        for (var s in options.servers) {
+            this.servers[s] = typeof options.servers[s] == 'string' ? {
+                url: options.servers[s],
+                version: this.version,
+                processDescription: {}
+            } : options.servers[s];
+        }
+    },
+    
+    /**
+     * APIMethod: execute
+     * Shortcut to execute a process with a single function call. This is
+     * equivalent to using <getProcess> and then calling execute on the
+     * process.
+     *
+     * Parameters:
+     * options - {Object} Options for the execute operation.
+     *
+     * Available options:
+     * server - {String} Mandatory. One of the local identifiers of the
+     *     configured servers.
+     * process - {String} Mandatory. A process identifier known to the
+     *     server.
+     * inputs - {Object} The inputs for the process, keyed by input identifier.
+     *     For spatial data inputs, the value of an input is usually an
+     *     <OpenLayers.Geometry>, an <OpenLayers.Feature.Vector> or an array of
+     *     geometries or features.
+     * output - {String} The identifier of an output to parse. Optional. If not
+     *     provided, the first output will be parsed.
+     * success - {Function} Callback to call when the process is complete.
+     *     This function is called with an outputs object as argument, which
+     *     will have a property with the identifier of the requested output
+     *     (e.g. 'result'). For processes that generate spatial output, the
+     *     value will either be a single <OpenLayers.Feature.Vector> or an
+     *     array of features.
+     * scope - {Object} Optional scope for the success callback.
+     */
+    execute: function(options) {
+        var process = this.getProcess(options.server, options.process);
+        process.execute({
+            inputs: options.inputs,
+            success: options.success,
+            scope: options.scope
+        });
+    },
+    
+    /**
+     * APIMethod: getProcess
+     * Creates an <OpenLayers.WPSProcess>.
+     *
+     * Parameters:
+     * serverID - {String} Local identifier from the servers that this instance
+     *     was constructed with.
+     * processID - {String} Process identifier known to the server.
+     *
+     * Returns:
+     * {<OpenLayers.WPSProcess>}
+     */
+    getProcess: function(serverID, processID) {
+        var process = new OpenLayers.WPSProcess({
+            client: this,
+            server: serverID,
+            identifier: processID
+        });
+        if (!this.lazy) {
+            process.describe();
+        }
+        return process;
+    },
+    
+    /**
+     * Method: describeProcess
+     *
+     * Parameters:
+     * serverID - {String} Identifier of the server
+     * processID - {String} Identifier of the requested process
+     * callback - {Function} Callback to call when the description is available
+     * scope - {Object} Optional execution scope for the callback function
+     */
+    describeProcess: function(serverID, processID, callback, scope) {
+        var server = this.servers[serverID];
+        if (!server.processDescription[processID]) {
+            if (!(processID in server.processDescription)) {
+                // set to null so we know a describeFeature request is pending
+                server.processDescription[processID] = null;
+                OpenLayers.Request.GET({
+                    url: server.url,
+                    params: {
+                        SERVICE: 'WPS',
+                        VERSION: server.version,
+                        REQUEST: 'DescribeProcess',
+                        IDENTIFIER: processID
+                    },
+                    success: function(response) {
+                        server.processDescription[processID] = response.responseText;
+                        this.events.triggerEvent('describeprocess', {
+                            identifier: processID,
+                            raw: response.responseText
+                        });
+                    },
+                    scope: this
+                });
+            } else {
+                // pending request
+                this.events.register('describeprocess', this, function describe(evt) {
+                    if (evt.identifier === processID) {
+                        this.events.unregister('describeprocess', this, describe);
+                        callback.call(scope, evt.raw);
+                    }
+                });
+            }
+        } else {
+            window.setTimeout(function() {
+                callback.call(scope, server.processDescription[processID]);
+            }, 0);
+        }
+    },
+    
+    /**
+     * Method: destroy
+     */
+    destroy: function() {
+        this.events.destroy();
+        this.events = null;
+        this.servers = null;
+    },
+    
+    CLASS_NAME: 'OpenLayers.WPSClient'
+    
+});
diff --git a/lib/OpenLayers/WPSProcess.js b/lib/OpenLayers/WPSProcess.js
new file mode 100644
index 0000000..874020d
--- /dev/null
+++ b/lib/OpenLayers/WPSProcess.js
@@ -0,0 +1,501 @@
+/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
+ * full list of contributors). Published under the 2-clause BSD license.
+ * See license.txt in the OpenLayers distribution or repository for the
+ * full text of the license. */
+
+/**
+ * @requires OpenLayers/SingleFile.js
+ */
+
+/**
+ * @requires OpenLayers/Geometry.js
+ * @requires OpenLayers/Feature/Vector.js
+ * @requires OpenLayers/Format/WKT.js
+ * @requires OpenLayers/Format/GeoJSON.js
+ * @requires OpenLayers/Format/WPSExecute.js
+ * @requires OpenLayers/Request.js
+ */
+
+/**
+ * Class: OpenLayers.WPSProcess
+ * Representation of a WPS process. Usually instances of
+ * <OpenLayers.WPSProcess> are created by calling 'getProcess' on an
+ * <OpenLayers.WPSClient> instance.
+ *
+ * Currently <OpenLayers.WPSProcess> supports processes that have geometries
+ * or features as output, using WKT or GeoJSON as output format. It also
+ * supports chaining of processes by using the <output> method to create a
+ * handle that is used as process input instead of a static value.
+ */
+OpenLayers.WPSProcess = OpenLayers.Class({
+    
+    /**
+     * Property: client
+     * {<OpenLayers.WPSClient>} The client that manages this process.
+     */
+    client: null,
+    
+    /**
+     * Property: server
+     * {String} Local client identifier for this process's server.
+     */
+    server: null,
+    
+    /**
+     * Property: identifier
+     * {String} Process identifier known to the server.
+     */
+    identifier: null,
+    
+    /**
+     * Property: description
+     * {Object} DescribeProcess response for this process.
+     */
+    description: null,
+    
+    /**
+     * APIProperty: localWPS
+     * {String} Service endpoint for locally chained WPS processes. Default is
+     *     'http://geoserver/wps'.
+     */
+    localWPS: 'http://geoserver/wps',
+    
+    /**
+     * Property: formats
+     * {Object} OpenLayers.Format instances keyed by mimetype.
+     */
+    formats: null,
+    
+    /**
+     * Property: chained
+     * {Integer} Number of chained processes for pending execute requests that
+     * don't have a full configuration yet.
+     */
+    chained: 0,
+    
+    /**
+     * Property: executeCallbacks
+     * {Array} Callbacks waiting to be executed until all chained processes
+     * are configured;
+     */
+    executeCallbacks: null,
+    
+    /**
+     * Constructor: OpenLayers.WPSProcess
+     *
+     * Parameters:
+     * options - {Object} Object whose properties will be set on the instance.
+     *
+     * Avaliable options:
+     * client - {<OpenLayers.WPSClient>} Mandatory. Client that manages this
+     *     process.
+     * server - {String} Mandatory. Local client identifier of this process's
+     *     server.
+     * identifier - {String} Mandatory. Process identifier known to the server.
+     */
+    initialize: function(options) {
+        OpenLayers.Util.extend(this, options);        
+        this.executeCallbacks = [];
+        this.formats = {
+            'application/wkt': new OpenLayers.Format.WKT(),
+            'application/json': new OpenLayers.Format.GeoJSON()
+        };
+    },
+    
+    /**
+     * Method: describe
+     * Makes the client issue a DescribeProcess request asynchronously.
+     *
+     * Parameters:
+     * options - {Object} Configuration for the method call
+     *
+     * Available options:
+     * callback - {Function} Callback to execute when the description is
+     *     available. Will be called with the parsed description as argument.
+     *     Optional.
+     * scope - {Object} The scope in which the callback will be executed.
+     *     Default is the global object.
+     */
+    describe: function(options) {
+        options = options || {};
+        if (!this.description) {
+            this.client.describeProcess(this.server, this.identifier, function(description) {
+                if (!this.description) {
+                    this.parseDescription(description);
+                }
+                if (options.callback) {
+                    options.callback.call(options.scope, this.description);
+                }
+            }, this);
+        } else if (options.callback) {
+            var description = this.description;
+            window.setTimeout(function() {
+                options.callback.call(options.scope, description);
+            }, 0);
+        }
+    },
+    
+    /**
+     * APIMethod: configure
+     * Configure the process, but do not execute it. Use this for processes
+     * that are chained as input of a different process by means of the
+     * <output> method.
+     *
+     * Parameters:
+     * options - {Object}
+     *
+     * Returns:
+     * {<OpenLayers.WPSProcess>} this process.
+     *
+     * Available options:
+     * inputs - {Object} The inputs for the process, keyed by input identifier.
+     *     For spatial data inputs, the value of an input is usually an
+     *     <OpenLayers.Geometry>, an <OpenLayers.Feature.Vector> or an array of
+     *     geometries or features.
+     * callback - {Function} Callback to call when the configuration is
+     *     complete. Optional.
+     * scope - {Object} Optional scope for the callback.
+     */
+    configure: function(options) {
+        this.describe({
+            callback: function() {
+                var description = this.description,
+                    inputs = options.inputs,
+                    input, i, ii;
+                for (i=0, ii=description.dataInputs.length; i<ii; ++i) {
+                    input = description.dataInputs[i];
+                    this.setInputData(input, inputs[input.identifier]);
+                }
+                if (options.callback) {
+                    options.callback.call(options.scope);
+                }
+            },
+            scope: this
+        });
+        return this;
+    },
+    
+    /**
+     * APIMethod: execute
+     * Configures and executes the process
+     *
+     * Parameters:
+     * options - {Object}
+     *
+     * Available options:
+     * inputs - {Object} The inputs for the process, keyed by input identifier.
+     *     For spatial data inputs, the value of an input is usually an
+     *     <OpenLayers.Geometry>, an <OpenLayers.Feature.Vector> or an array of
+     *     geometries or features.
+     * output - {String} The identifier of the output to request and parse.
+     *     Optional. If not provided, the first output will be requested.
+     * success - {Function} Callback to call when the process is complete.
+     *     This function is called with an outputs object as argument, which
+     *     will have a property with the identifier of the requested output
+     *     (or 'result' if output was not configured). For processes that
+     *     generate spatial output, the value will be an array of
+     *     <OpenLayers.Feature.Vector> instances.
+     * scope - {Object} Optional scope for the success callback.
+     */
+    execute: function(options) {
+        this.configure({
+            inputs: options.inputs,
+            callback: function() {
+                var me = this;
+                //TODO For now we only deal with a single output
+                var outputIndex = this.getOutputIndex(
+                    me.description.processOutputs, options.output
+                );
+                me.setResponseForm({outputIndex: outputIndex});
+                (function callback() {
+                    OpenLayers.Util.removeItem(me.executeCallbacks, callback);
+                    if (me.chained !== 0) {
+                        // need to wait until chained processes have a
+                        // description and configuration - see chainProcess
+                        me.executeCallbacks.push(callback);
+                        return;
+                    }
+                    // all chained processes are added as references now, so
+                    // let's proceed.
+                    OpenLayers.Request.POST({
+                        url: me.client.servers[me.server].url,
+                        data: new OpenLayers.Format.WPSExecute().write(me.description),
+                        success: function(response) {
+                            var output = me.description.processOutputs[outputIndex];
+                            var mimeType = me.findMimeType(
+                                output.complexOutput.supported.formats
+                            );
+                            //TODO For now we assume a spatial output
+                            var features = me.formats[mimeType].read(response.responseText);
+                            if (features instanceof OpenLayers.Feature.Vector) {
+                                features = [features];
+                            }
+                            if (options.success) {
+                                var outputs = {};
+                                outputs[options.output || 'result'] = features;
+                                options.success.call(options.scope, outputs);
+                            }
+                        },
+                        scope: me
+                    });
+                })();
+            },
+            scope: this
+        });
+    },
+    
+    /**
+     * APIMethod: output
+     * Chain an output of a configured process (see <configure>) as input to
+     * another process.
+     *
+     * (code)
+     * intersect = client.getProcess('opengeo', 'JTS:intersection');    
+     * intersect.configure({
+     *     // ...
+     * });
+     * buffer = client.getProcess('opengeo', 'JTS:buffer');
+     * buffer.execute({
+     *     inputs: {
+     *         geom: intersect.output('result'), // <-- here we're chaining
+     *         distance: 1
+     *     },
+     *     // ...
+     * });
+     * (end)
+     *
+     * Parameters:
+     * identifier - {String} Identifier of the output that we're chaining. If
+     *     not provided, the first output will be used.
+     */
+    output: function(identifier) {
+        return new OpenLayers.WPSProcess.ChainLink({
+            process: this,
+            output: identifier
+        });
+    },
+    
+    /**
+     * Method: parseDescription
+     * Parses the DescribeProcess response
+     *
+     * Parameters:
+     * description - {Object}
+     */
+    parseDescription: function(description) {
+        var server = this.client.servers[this.server];
+        this.description = new OpenLayers.Format.WPSDescribeProcess()
+            .read(server.processDescription[this.identifier])
+            .processDescriptions[this.identifier];
+    },
+    
+    /**
+     * Method: setInputData
+     * Sets the data for a single input
+     *
+     * Parameters:
+     * input - {Object}  An entry from the dataInputs array of the process
+     *     description.
+     * data - {Mixed} For spatial data inputs, this is usually an
+     *     <OpenLayers.Geometry>, an <OpenLayers.Feature.Vector> or an array of
+     *     geometries or features.
+     */
+    setInputData: function(input, data) {
+        // clear any previous data
+        delete input.data;
+        delete input.reference;
+        if (data instanceof OpenLayers.WPSProcess.ChainLink) {
+            ++this.chained;
+            input.reference = {
+                method: 'POST',
+                href: data.process.server === this.server ?
+                    this.localWPS : this.client.servers[data.process.server].url
+            };
+            data.process.describe({
+                callback: function() {
+                    --this.chained;
+                    this.chainProcess(input, data);
+                },
+                scope: this
+            });
+        } else {
+            input.data = {};
+            var complexData = input.complexData;
+            if (complexData) {
+                var format = this.findMimeType(complexData.supported.formats);
+                input.data.complexData = {
+                    mimeType: format,
+                    value: this.formats[format].write(this.toFeatures(data))
+                };
+            } else {
+                input.data.literalData = {
+                    value: data
+                };
+            }
+        }
+    },
+    
+    /**
+     * Method: setResponseForm
+     * Sets the responseForm property of the <execute> payload.
+     *
+     * Parameters:
+     * options - {Object} See below.
+     *
+     * Available options:
+     * outputIndex - {Integer} The index of the output to use. Optional.
+     * supportedFormats - {Object} Object with supported mime types as key,
+     *     and true as value for supported types. Optional.
+     */
+    setResponseForm: function(options) {
+        options = options || {};
+        var output = this.description.processOutputs[options.outputIndex || 0];
+        this.description.responseForm = {
+            rawDataOutput: {
+                identifier: output.identifier,
+                mimeType: this.findMimeType(output.complexOutput.supported.formats, options.supportedFormats)
+            }
+        };
+    },
+    
+    /**
+     * Method: getOutputIndex
+     * Gets the index of a processOutput by its identifier
+     *
+     * Parameters:
+     * outputs - {Array} The processOutputs array to look at
+     * identifier - {String} The identifier of the output
+     *
+     * Returns
+     * {Integer} The index of the processOutput with the provided identifier
+     *     in the outputs array.
+     */
+    getOutputIndex: function(outputs, identifier) {
+        var output;
+        if (identifier) {
+            for (var i=outputs.length-1; i>=0; --i) {
+                if (outputs[i].identifier === identifier) {
+                    output = i;
+                    break;
+                }
+            }
+        } else {
+            output = 0;
+        }
+        return output;
+    },
+    
+    /**
+     * Method: chainProcess
+     * Sets a fully configured chained process as input for this process.
+     *
+     * Parameters:
+     * input - {Object} The dataInput that the chained process provides.
+     * chainLink - {<OpenLayers.WPSProcess.ChainLink>} The process to chain.
+     */
+    chainProcess: function(input, chainLink) {
+        var output = this.getOutputIndex(
+            chainLink.process.description.processOutputs, chainLink.output
+        );
+        input.reference.mimeType = this.findMimeType(
+            input.complexData.supported.formats,
+            chainLink.process.description.processOutputs[output].complexOutput.supported.formats
+        );
+        var formats = {};
+        formats[input.reference.mimeType] = true;
+        chainLink.process.setResponseForm({
+            outputIndex: output,
+            supportedFormats: formats
+        });
+        input.reference.body = chainLink.process.description;
+        while (this.executeCallbacks.length > 0) {
+            this.executeCallbacks[0]();
+        }
+    },
+    
+    /**
+     * Method: toFeatures
+     * Converts spatial input into features so it can be processed by
+     * <OpenLayers.Format> instances.
+     *
+     * Parameters:
+     * source - {Mixed} An <OpenLayers.Geometry>, an
+     *     <OpenLayers.Feature.Vector>, or an array of geometries or features
+     *
+     * Returns:
+     * {Array(<OpenLayers.Feature.Vector>)}
+     */
+    toFeatures: function(source) {
+        var isArray = OpenLayers.Util.isArray(source);
+        if (!isArray) {
+            source = [source];
+        }
+        var target = new Array(source.length),
+            current;
+        for (var i=0, ii=source.length; i<ii; ++i) {
+            current = source[i];
+            target[i] = current instanceof OpenLayers.Feature.Vector ?
+                current : new OpenLayers.Feature.Vector(current);
+        }
+        return isArray ? target : target[0];
+    },
+    
+    /**
+     * Method: findMimeType
+     * Finds a supported mime type.
+     *
+     * Parameters:
+     * sourceFormats - {Object} An object literal with mime types as key and
+     *     true as value for supported formats.
+     * targetFormats - {Object} Like <sourceFormats>, but optional to check for
+     *     supported mime types on a different target than this process.
+     *     Default is to check against this process's supported formats.
+     *
+     * Returns:
+     * {String} A supported mime type.
+     */
+    findMimeType: function(sourceFormats, targetFormats) {
+        targetFormats = targetFormats || this.formats;
+        for (var f in sourceFormats) {
+            if (f in targetFormats) {
+                return f;
+            }
+        }
+    },
+    
+    CLASS_NAME: "OpenLayers.WPSProcess"
+    
+});
+
+/**
+ * Class: OpenLayers.WPSProcess.ChainLink
+ * Type for chaining processes.
+ */
+OpenLayers.WPSProcess.ChainLink = OpenLayers.Class({
+    
+    /**
+     * Property: process
+     * {<OpenLayers.WPSProcess>} The process to chain
+     */
+    process: null,
+    
+    /**
+     * Property: output
+     * {String} The output identifier of the output we are going to use as
+     *     input for another process.
+     */
+    output: null,
+    
+    /**
+     * Constructor: OpenLayers.WPSProcess.ChainLink
+     *
+     * Parameters:
+     * options - {Object} Properties to set on the instance.
+     */
+    initialize: function(options) {
+        OpenLayers.Util.extend(this, options);
+    },
+    
+    CLASS_NAME: "OpenLayers.WPSProcess.ChainLink"
+    
+});
diff --git a/lib/deprecated.js b/lib/deprecated.js
index 0cc3c1b..a492faa 100644
--- a/lib/deprecated.js
+++ b/lib/deprecated.js
@@ -22,6 +22,8 @@
  * @requires OpenLayers/Format/XML.js
  * @requires OpenLayers/Geometry.js
  * @requires OpenLayers/Renderer/Elements.js
+ * @requires OpenLayers/Popup/Anchored.js
+ * @requires Rico/Corner.js
  */
 
 /**
@@ -164,6 +166,17 @@ OpenLayers.Util.getArgs = function(url) {
     return OpenLayers.Util.getParameters(url);
 };
 
+/** 
+ * Maintain existing definition of $.
+ * 
+ * The use of our $-method is deprecated and the mapping of 
+ * OpenLayers.Util.getElement will eventually be removed. Do not depend on 
+ * window.$ being defined by OpenLayers.
+ */
+if(typeof window.$  === "undefined") {
+    window.$ = OpenLayers.Util.getElement;
+}
+
 /**
  * Namespace: OpenLayers.Ajax
  */
@@ -5645,4 +5658,185 @@ OpenLayers.Renderer.SVG2.LABEL_VFACTOR = {
  */
 OpenLayers.Renderer.SVG2.preventDefault = function(e) {
     e.preventDefault && e.preventDefault();
-};
\ No newline at end of file
+};
+
+/**
+ * Class: OpenLayers.Popup.AnchoredBubble
+ * This class is *deprecated*. Use {<OpenLayers.Popup.Anchored>} and
+ * round corners using CSS3's border-radius property.
+ *
+ * Inherits from:
+ *  - <OpenLayers.Popup.Anchored>
+ */
+OpenLayers.Popup.AnchoredBubble = OpenLayers.Class(OpenLayers.Popup.Anchored, {
+
+    /**
+     * Property: rounded
+     * {Boolean} Has the popup been rounded yet?
+     */
+    rounded: false,
+
+    /**
+     * Constructor: OpenLayers.Popup.AnchoredBubble
+     *
+     * Parameters:
+     * id - {String}
+     * lonlat - {<OpenLayers.LonLat>}
+     * contentSize - {<OpenLayers.Size>}
+     * contentHTML - {String}
+     * anchor - {Object} Object to which we'll anchor the popup. Must expose
+     *     a 'size' (<OpenLayers.Size>) and 'offset' (<OpenLayers.Pixel>)
+     *     (Note that this is generally an <OpenLayers.Icon>).
+     * closeBox - {Boolean}
+     * closeBoxCallback - {Function} Function to be called on closeBox click.
+     */
+    initialize:function(id, lonlat, contentSize, contentHTML, anchor, closeBox,
+                        closeBoxCallback) {
+
+        this.padding = new OpenLayers.Bounds(
+            0, OpenLayers.Popup.AnchoredBubble.CORNER_SIZE,
+            0, OpenLayers.Popup.AnchoredBubble.CORNER_SIZE
+        );
+        OpenLayers.Popup.Anchored.prototype.initialize.apply(this, arguments);
+    },
+
+    /**
+     * Method: draw
+     *
+     * Parameters:
+     * px - {<OpenLayers.Pixel>}
+     *
+     * Returns:
+     * {DOMElement} Reference to a div that contains the drawn popup.
+     */
+    draw: function(px) {
+
+        OpenLayers.Popup.Anchored.prototype.draw.apply(this, arguments);
+
+        this.setContentHTML();
+
+        //set the popup color and opacity
+        this.setBackgroundColor();
+        this.setOpacity();
+
+        return this.div;
+    },
+
+    /**
+     * Method: updateRelativePosition
+     * The popup has been moved to a new relative location, in which case
+     *     we will want to re-do the rico corners.
+     */
+    updateRelativePosition: function() {
+        this.setRicoCorners();
+    },
+
+    /**
+     * APIMethod: setSize
+     *
+     * Parameters:
+     * contentSize - {<OpenLayers.Size>} the new size for the popup's
+     *     contents div (in pixels).
+     */
+    setSize:function(contentSize) {
+        OpenLayers.Popup.Anchored.prototype.setSize.apply(this, arguments);
+
+        this.setRicoCorners();
+    },
+
+    /**
+     * APIMethod: setBackgroundColor
+     *
+     * Parameters:
+     * color - {String}
+     */
+    setBackgroundColor:function(color) {
+        if (color != undefined) {
+            this.backgroundColor = color;
+        }
+
+        if (this.div != null) {
+            if (this.contentDiv != null) {
+                this.div.style.background = "transparent";
+                OpenLayers.Rico.Corner.changeColor(this.groupDiv,
+                                                   this.backgroundColor);
+            }
+        }
+    },
+
+    /**
+     * APIMethod: setOpacity
+     *
+     * Parameters:
+     * opacity - {float}
+     */
+    setOpacity:function(opacity) {
+        OpenLayers.Popup.Anchored.prototype.setOpacity.call(this, opacity);
+
+        if (this.div != null) {
+            if (this.groupDiv != null) {
+                OpenLayers.Rico.Corner.changeOpacity(this.groupDiv,
+                                                     this.opacity);
+            }
+        }
+    },
+
+    /**
+     * Method: setBorder
+     * Always sets border to 0. Bubble Popups can not have a border.
+     *
+     * Parameters:
+     * border - {Integer}
+     */
+    setBorder:function(border) {
+        this.border = 0;
+    },
+
+    /**
+     * Method: setRicoCorners
+     * Update RICO corners according to the popup's current relative postion.
+     */
+    setRicoCorners:function() {
+
+        var corners = this.getCornersToRound(this.relativePosition);
+        var options = {corners: corners,
+                         color: this.backgroundColor,
+                       bgColor: "transparent",
+                         blend: false};
+
+        if (!this.rounded) {
+            OpenLayers.Rico.Corner.round(this.div, options);
+            this.rounded = true;
+        } else {
+            OpenLayers.Rico.Corner.reRound(this.groupDiv, options);
+            //set the popup color and opacity
+            this.setBackgroundColor();
+            this.setOpacity();
+        }
+    },
+
+    /**
+     * Method: getCornersToRound
+     *
+     * Returns:
+     * {String} The proper corners string ("tr tl bl br") for rico to round.
+     */
+    getCornersToRound:function() {
+
+        var corners = ['tl', 'tr', 'bl', 'br'];
+
+        //we want to round all the corners _except_ the opposite one.
+        var corner = OpenLayers.Bounds.oppositeQuadrant(this.relativePosition);
+        OpenLayers.Util.removeItem(corners, corner);
+
+        return corners.join(" ");
+    },
+
+    CLASS_NAME: "OpenLayers.Popup.AnchoredBubble"
+});
+
+/**
+ * Constant: CORNER_SIZE
+ * {Integer} 5. Border space for the RICO corners.
+ */
+OpenLayers.Popup.AnchoredBubble.CORNER_SIZE = 5;
diff --git a/license.txt b/license.txt
index 20a789c..cb829cc 100644
--- a/license.txt
+++ b/license.txt
@@ -1,4 +1,4 @@
-Copyright 2005-2012 OpenLayers Contributors. All rights reserved. See
+Copyright 2005-2013 OpenLayers Contributors. All rights reserved. See
 authors.txt for full list.
 
 Redistribution and use in source and binary forms, with or without modification,
diff --git a/notes/2.12.md b/notes/2.12.md
index 1cb4aab..06d38cf 100644
--- a/notes/2.12.md
+++ b/notes/2.12.md
@@ -82,7 +82,7 @@ The displaying of tiles can now be animated, using CSS3 transitions. Transitions
 
 People can override this rule to use other transition settings. To remove tile animation entirely use:
 
-    .olLayerGridTile .olTileImage {
+    .olLayerGrid .olTileImage {
         -webkit-transition: none;
         -moz-transition: none;
         -o-transition: all 0 none;
@@ -95,6 +95,19 @@ Corresponding issues/pull requests:
 
  * https://github.com/openlayers/openlayers/pull/127
 
+Note: Issue #511 has reported that tile animation causes flickering/blinking in
+the iOS native browser. Forcing the browser to use hardware-accelerated
+animations fixed the issue, but #542 has reported that it also considerably
+slows down freehand drawing on iOS. If you're experiencing this and want to
+disable hardware-accelerated animations you can use the following rule in your
+CSS:
+
+    @media (-webkit-transform-3d) {
+        img.olTileImage {
+            -webkit-transform: none;
+        }
+    }
+
 ## Tile Queue
 
 The tiling code has been overhauled so tile loading in grid layers is now done in a queue.
diff --git a/notes/2.13.md b/notes/2.13.md
new file mode 100644
index 0000000..75b334e
--- /dev/null
+++ b/notes/2.13.md
@@ -0,0 +1,159 @@
+# Enhancements and Additions
+
+## Dotless identifiers
+
+Previously, objects generated by the library were given id properties with values that contained dots (e.g. "OpenLayers.Control.Navigation_2").  These same identifiers are also used for DOM elements in some case.  Though uncommon, a developer may want to access these elements with a CSS selector.  To facilitate this, we now always generate ids with underscore instead of dot.
+
+Corresponding issues/pull requests:
+
+ * https://github.com/openlayers/openlayers/pull/416
+
+## Better support for analog scroll wheel
+
+Removed rounding of zoom level for maps with fractionalZoom == true. So users with an OS and interface device with analog scroll support will now get smooth zooming.
+
+Corresponding issues/pull requests:
+
+ * https://github.com/openlayers/openlayers/pull/483
+ 
+## Google v3 Layer
+
+This release changes the way Google layers are integrated with OpenLayers. With this change, OpenLayers should be less fragile to changes of the GMaps API version, because no DOM elements inside the Google container need to be modified by OpenLayers any more.
+
+Application developers should be aware that the Google Map of an `OpenLayers.Layer.Google.v3` instance is no longer added to the map's `viewPortDiv`. Instead, the `viewPortDiv` is added as Google Maps control to the Google map. This means that when switching base layers, the whole DOM structure below the map's `div` changes.
+
+Corresponding issues/pull requests:
+
+* https://github.com/openlayers/openlayers/pull/484
+
+## Bing Layer
+
+All requests to the Bing Maps service are now sent using the same protocol as the OpenLayers application using the Bing layer. For file:/// URIs, the http
+protocol is used. A new config option `protocol` has been introduced to set the protocol to use for requests to the Bing Maps service. 'https:' should work fine, but the availability of tiles and attribution logo with the https protocol is not guaranteed. If in doubt, set `protocol` to 'http:'.
+
+Corresponding issues/pull requests:
+
+* http://github.com/openlayers/openlayers/pull/700
+
+## New Map and Vector Layer Events for Feature Interaction
+
+The featureclick events extension (`lib/Events/featureclick.js`) provides four new events ("featureclick", "nofeatureclick", "featureover", "featureout") that can be used as an alternative to the Feature handler or the
+SelectFeature control. It works with multiple layers out of the box and can detect hits on multiple features (except when using the Canvas renderer). See `examples/feature-events.html` for an implementation example.
+
+# Behavior Changes from Past Releases
+
+## Control.DragPan: Kinetic by default
+
+The `enableKinetic` property for the DragPan control has been changed to true by default.  This will enable kinetic panning only if the `OpenLayers/Kinetic.js` file is included in your build.
+
+## Control.ModifyFeature: no more built-in SelectFeature control
+
+The ModifyFeature control is now much leaner, making it more reliable when combined with other controls. The most noticable change is that it has no
+`selectControl` member any more. Users who previously relied on this built-in SelectFeature control will now have to create both a SelectFeature and a ModifyFeature control and configure the ModifyFeature control with `standalone: true`. To get features selected, call the `selectFeature` method e.g. from a `featureselected` listener on the vector layer. Note that other than in the old implementation, calling `selectFeature` on an already selected feature will not do anything.
+
+## Format.GPX: No more prefixes
+
+No `gpx:` prefix is added in the XML tags anymore when writing GPX from `OpenLayers` features. It seems like it is not supported by most of the tools that are able to read GPX.
+
+## Different return type for OpenLayers.Format.WMSDescribeLayer
+
+The return type of WMSDescribeLayer format's `read` method was different from the one of the VersionedOGC format superclass. So it was changed from an array to an object with a layerDescriptions property that holds the array. For backwards compatibility, the object still has a length property and 0, ..., n properties with the previous array values.
+
+## Moved errorProperty from the base class to the parser in Format.OWSCommon
+
+This was necessary for WCS support because there are no properties in common between versions 1.0.0 and 1.1.0 that were appropriate for checking.  The only existing code that this affected was WFS parsing.
+
+## Layer.Grid: Tile queue and tileLoadingDelay changes
+
+With the introduction of OpenLayers.TileManager, tile queueing has become optional but is enabled by default. To not use a tile queue in 2.13, the map needs to be configured with tileManager: null, e.g.:
+
+    var map = new OpenLayers.Map('map', {
+        tileManager: null
+    });
+
+The tile queue works differently than before: it no longer loads one tile at a time. Instead, it waits after a zoom or pan, and loads all tiles after a delay. This has the same effect as previously (less burden on the server), but makes use of the browser's request management. The delay can be configured separately for zooming and moving the map, using the `zoomDelay` (default: 200 ms) and `moveDelay` (default: 100 ms) config options of the TileManager. If you want to have the map be ass [...]
+
+The `moveDelay` is the replacement for the `tileLoadingDelay` layer config option, which has been removed. There is no magic any more to only use the delay when requestAnimationFrame is not natively available.
+
+## Layer.Grid: Resize transitions by default
+
+The `transitionEffect` property for grid layers has been changed to "resize" by default.  This allows smooth transitions with animated zooming (also enabled by default).  If resize transitions are not wanted for individual layers, set `transitionEffect` to `null`.
+
+## Map: Animated zooming and GPU support
+
+OpenLayers now has animated zooming, which is enabled by default. To turn it off, configure the map with `zoomMethod: null`.
+
+To make the zoom animation smooth, GPU support is active by default for rendering tiles. This may interfere with UI widgets that overlay the map. In this case, it may be necessary to turn GPU support off, which is done with the following css declaration:
+
+    img.olTileImage {
+        -webkit-transform: inherit;
+        -moz-transform: inherit;
+        -o-transform: inherit;
+        -ms-transform: inherit;
+        transform: inherit;
+        -webkit-backface-visibility: inherit;
+        -moz-backface-visibility: inherit;
+        -ms-backface-visibility: inherit;
+        backface-visibility: inherit;
+        -webkit-perspective: inherit;
+        -moz-perspective: inherit;
+        -ms-perspective: inherit;
+        perspective: inherit;
+    }
+
+## Map property fallThrough defaults to false
+
+The behaviour controlled by map property fallThrough wasn't consistent (some events were swallowed even with fallThrough set to true) and changes have been made to fix that. Defaulting fallThrough to false after this change is sensible in most situations and will probably be what most applications expect, but if you previously relied on pointer or keyboard events being passed through you will probably want to set fallThrough to true.
+
+Behavioural change was made in this commit:
+
+* https://github.com/openlayers/openlayers/commit/a6119f6a7528e013b922fd0d997a07df13f6bd6e
+
+## window.$ is no longer an alias for OpenLayers.Util.getElement
+ 
+We do no longer create a global variable `$` when such a symbol isn't already
+defined. Previous versions of OpenLayers would define `$` to be an alias for 
+`OpenLayers.Util.getElement`. If your application requires `window.$` to be 
+defined in such a way you can either
+ 
+* include deprecated.js in your custom build or as additional ressource in your
+  HTML-file
+* or you do the aliasing in your application code yourself:
+
+    `window.$ = OpenLayers.Util.getElement;`
+
+Corresponding issue/pull requests:
+
+* https://github.com/openlayers/openlayers/pull/423
+
+# New Options for Build Script
+
+* add the contents of a file as a comment at the front of the build, for example, the output of 'git describe --tags' could be saved as a file and then included
+* create build file as an AMD module
+
+run 'build.py -h' for more details
+
+Corresponding issue/pull requests:
+
+* https://github.com/openlayers/openlayers/pull/528
+
+## Deprecated Components
+A number of properties, methods, and constructors have been marked as
+deprecated for multiple releases in the 2.x series.
+For the 2.13 release this deprecated functionality has been moved to a
+separate deprecated.js file.  If you use any of the constructors or
+methods below, you will have to explicitly include the deprecated.js
+file in your build (or add it in a separate `<script>` tag after
+OpenLayers.js).
+
+ * OpenLayers.Layer.Popup.AnchoredBubble
+
+Because the Rico library is now only used by deprecated components, the
+files have been removed from the debug loader in lib/OpenLayers.js;
+the files have now to be explicitly loaded in a script tag.
+
+## LayerSwitcher rounded corner removal
+
+The deprecated `roundedCorner` and `roundedCornerColor` options have
+been removed from the `OpenLayers.Control.LayerSwitcher` control. Use
+CSS3's border-radius instead.
diff --git a/readme.md b/readme.md
index f41fcc8..e8e5dcb 100644
--- a/readme.md
+++ b/readme.md
@@ -1,6 +1,6 @@
 # OpenLayers
 
-Copyright (c) 2005-2012 OpenLayers Contributors. See authors.txt for
+Copyright (c) 2005-2013 OpenLayers Contributors. See authors.txt for
 more details.
 
 OpenLayers is a JavaScript library for building map applications
diff --git a/tests/Animation.html b/tests/Animation.html
index f113690..c24ae49 100644
--- a/tests/Animation.html
+++ b/tests/Animation.html
@@ -6,6 +6,7 @@
 
         // dependencies for tests
         var OpenLayers = [
+            "OpenLayers/Util/vendorPrefix.js",
             "OpenLayers/Animation.js"
         ];
 
diff --git a/tests/BaseTypes.html b/tests/BaseTypes.html
index c264d4a..38878dc 100644
--- a/tests/BaseTypes.html
+++ b/tests/BaseTypes.html
@@ -155,8 +155,8 @@
             }
         };
         t.eq(
-            format("${a.b.c} ${a.b.e} ${a.b.q} ${a} ${a...b...c}", context),
-            "d f undefined [object Object] d",
+            format("${a.b.c} ${a.b.e} ${a.b.q} ${a} ${a...b...c} ${aa.b} ${a.bb.c}", context),
+            "d f undefined [object Object] d undefined undefined",
             "attribute values that are objects are supported"
         );
 
@@ -201,28 +201,30 @@
     
     function test_Number_numericIf(t) {
         var cases = [
-            {value: "3", expect: 3},
-            {value: "+3", expect: 3},
-            {value: "-3", expect: -3},
-            {value: "3.0", expect: 3},
-            {value: "+3.0", expect: 3},
-            {value: "-3.0", expect: -3},
-            {value: "6.02e23", expect: 6.02e23},
-            {value: "+1.0e-100", expect: 1e-100},
-            {value: "-1.0e+100", expect: -1e100},
-            {value: "1E100", expect: 1e100},
-            {value: null, expect: null},
-            {value: true, expect: true},
-            {value: false, expect: false},
-            {value: undefined, expect: undefined},
-            {value: "", expect: ""},
-            {value: "3 ", expect: "3 "},
-            {value: " 3", expect: " 3"},
-            {value: "1e", expect: "1e"},
-            {value: "1+e", expect: "1+e"},
-            {value: "1-e", expect: "1-e"}
+            {value: "3", expect: 3, expectWithTrim: 3},
+            {value: "+3", expect: 3, expectWithTrim: 3},
+            {value: "-3", expect: -3, expectWithTrim: -3},
+            {value: "3.0", expect: 3, expectWithTrim: 3},
+            {value: "+3.0", expect: 3, expectWithTrim: 3},
+            {value: "-3.0", expect: -3, expectWithTrim: -3},
+            {value: "6.02e23", expect: 6.02e23, expectWithTrim: 6.02e23},
+            {value: "+1.0e-100", expect: 1e-100, expectWithTrim: 1e-100},
+            {value: "-1.0e+100", expect: -1e100, expectWithTrim: -1e100},
+            {value: "1E100", expect: 1e100, expectWithTrim: 1e100},
+            {value: null, expect: null, expectWithTrim: null},
+            {value: true, expect: true, expectWithTrim: true},
+            {value: false, expect: false, expectWithTrim: false},
+            {value: undefined, expect: undefined, expectWithTrim: undefined},
+            {value: "", expect: "", expectWithTrim: ""},
+            {value: "3 ", expect: "3 ", expectWithTrim: 3},
+            {value: " 3", expect: " 3", expectWithTrim: 3},
+            {value: "1e", expect: "1e", expectWithTrim: "1e"},
+            {value: "1+e", expect: "1+e", expectWithTrim: "1+e"},
+            {value: "1-e", expect: "1-e", expectWithTrim: "1-e"},
+            {value: " 27 ", expect: " 27 ", expectWithTrim: 27},
+            {value: " abc ", expect: " abc ", expectWithTrim: " abc "}
         ];
-        t.plan(cases.length);
+        t.plan(cases.length*2);
         
         var func = OpenLayers.String.numericIf;
         var obj, val, got, exp;
@@ -232,6 +234,9 @@
             exp = obj.expect;
             got = func(val);
             t.eq(got, exp, "'" + val + "' returns " + exp);
+            got = func(val, true);
+            exp = obj.expectWithTrim;
+            t.eq(got, exp, "'" + val + "' returns " + exp + " with trimWhitespace true");
         }
     }
    
@@ -273,6 +278,17 @@
         OpenLayers.Number.decimalSeparator = ",";
         t.eq(format(num, 3), "12.345,679", "changing thousands/decimal separator globally works");
     }
+    
+    function test_Number_zeroPad(t) {
+        t.plan(6);
+        var pad = OpenLayers.Number.zeroPad;
+        t.eq(pad(15, 4), "0015", "left padding works");
+        t.eq(pad(15, 2), "15", "no left padding when equal to number of digits");
+        t.eq(pad(15, 1), "15", "no left padding when less than number of digits");
+        t.eq(pad(10, 5, 2), "01010", "radix modified and padding works");
+        t.eq(pad(10, 5, 8), "00012", "radix modified and padding works");
+        t.eq(pad(10, 5, 36), "0000a", "radix modified and padding works");
+    }
 
     function test_Function_bind(t) {
         t.plan(12);
diff --git a/tests/BaseTypes/Bounds.html b/tests/BaseTypes/Bounds.html
index a1497cf..bdfeaf2 100644
--- a/tests/BaseTypes/Bounds.html
+++ b/tests/BaseTypes/Bounds.html
@@ -2,10 +2,10 @@
 <head>
   <script src="../OLLoader.js"></script>
   <script type="text/javascript">
-    var bounds; 
+    var bounds;
     function test_Bounds_constructor (t) {
         t.plan( 26 );
-        
+
         bounds = new OpenLayers.Bounds();
         t.ok( bounds instanceof OpenLayers.Bounds, "new OpenLayers.Bounds returns Bounds object" );
         t.eq( bounds.CLASS_NAME, "OpenLayers.Bounds", "bounds.CLASS_NAME is set correctly" );
@@ -24,11 +24,11 @@
         t.eq( bounds.top, 4, "bounds.top is set correctly" );
         t.eq( bounds.getWidth(), 10, "bounds.getWidth() returns correct value" );
         t.eq( bounds.getHeight(), 2, "bounds.getHeight() returns correct value" );
-        
+
         var sz = bounds.getSize();
         var size = new OpenLayers.Size(10,2);
         t.ok(sz.equals(size),"bounds.getSize() has correct value" );
-    
+
         var center = new OpenLayers.Pixel(5,3);
         var boundsCenter = bounds.getCenterPixel();
         t.ok( boundsCenter.equals(center), "bounds.getCenterLonLat() has correct value" );
@@ -44,7 +44,7 @@
         t.eq( bounds.bottom, -20037508.34, "bounds.bottom adjusted for floating precision");
         t.eq( bounds.right, 40075016.68, "bounds.right adjusted for floating precision");
         t.eq( bounds.top, 20037508.34, "bounds.top adjusted for floating precision");
-        
+
         // allow construction from a single arg
         bounds = new OpenLayers.Bounds([-180, -90, 180, 90]);
         t.ok(bounds instanceof OpenLayers.Bounds, "(array) correct instance");
@@ -52,7 +52,7 @@
         t.eq(bounds.bottom, -90, "(array) bottom");
         t.eq(bounds.right, 180, "(array) right");
         t.eq(bounds.top, 90, "(array) top");
-        
+
     }
 
     function test_Bounds_constructorFromStrings(t) {
@@ -64,7 +64,7 @@
         t.eq( bounds.bottom, 2, "bounds.bottom is set correctly" );
         t.eq( bounds.right, 10, "bounds.right is set correctly" );
         t.eq( bounds.top, 4, "bounds.top is set correctly" );
-        
+
     }
 
     function test_Bounds_toBBOX(t) {
@@ -85,12 +85,12 @@
     function test_Bounds_toString(t) {
         t.plan( 1 );
         bounds = new OpenLayers.Bounds(1,2,3,4);
-        t.eq( bounds.toString(), "1,2,3,4", "toString() returns correct value." ); 
+        t.eq( bounds.toString(), "1,2,3,4", "toString() returns correct value." );
     }
     function test_Bounds_toArray(t) {
         t.plan( 1 );
         bounds = new OpenLayers.Bounds(1,2,3,4);
-        t.eq( bounds.toArray(), [1,2,3,4], "toArray() returns correct value." ); 
+        t.eq( bounds.toArray(), [1,2,3,4], "toArray() returns correct value." );
     }
 
     function test_Bounds_toGeometry(t) {
@@ -133,9 +133,9 @@
         t.eq( bounds.containsLonLat(ll), bounds.contains(ll.lon, ll.lat), "containsLonLat works");
 
     }
-    
+
     function test_containsLonLat_wraped(t) {
-        
+
         var worldBounds = new OpenLayers.Bounds(-180, -90, 180, 90);
 
         var cases = [{
@@ -157,10 +157,10 @@
         }, {
             ll: [-180 * 50, 5], bbox: [-10, -10, 10, 10], contained: true
         }];
-        
+
         var len = cases.length;
         t.plan(len);
-        
+
         var c, bounds, loc;
         for (var i=0; i<len; ++i) {
             c = cases[i];
@@ -168,7 +168,7 @@
             bounds = new OpenLayers.Bounds.fromArray(c.bbox);
             t.eq(bounds.containsLonLat(loc, {worldBounds: worldBounds}), c.contained, "case " + i);
         }
-        
+
     }
 
     function test_Bounds_fromString(t) {
@@ -200,7 +200,7 @@
 
         t.ok( bounds.getSize().equals(new OpenLayers.Size(100, 110)), "getCenterPixel() works correctly");
     }
-    
+
     function test_Bounds_clone(t) {
        t.plan( 6 );
        var oldBounds = new OpenLayers.Bounds(1,2,3,4);
@@ -210,7 +210,7 @@
        t.eq( bounds.bottom, 2, "bounds.bottom is set correctly" );
        t.eq( bounds.right, 3, "bounds.right is set correctly" );
        t.eq( bounds.top, 4, "bounds.top is set correctly" );
-       
+
        oldBounds.left = 100;
        t.eq( bounds.left, 1, "changing olBounds.left does not change bounds.left" );
     }
@@ -260,15 +260,15 @@
                                                   20037508.34,20037508.34);
         t.eq( merc_aBounds.intersectsBounds(merc_bBounds, true), true, "intersect shouldn't fall prey to floating point errors, inclusive is true");
         t.eq( merc_aBounds.intersectsBounds(merc_bBounds, false), false, "intersect shouldn't fall prey to floating point errors, inclusive is false");
-        
+
         // test for bounds intersection where none of the corners are contained within the other bounds
         var b1 = new OpenLayers.Bounds(-1, -2, 1, 2);
         var b2 = new OpenLayers.Bounds(-2, -1, 2, 1);
         t.eq(b1.intersectsBounds(b2), true, "vertical rectangle intersects horizontal rectangle");
         t.eq(b2.intersectsBounds(b1), true, "horizontal rectangle intersects vertical rectangle");
-        
+
     }
-    
+
     function test_Bounds_containsBounds(t) {
         t.plan( 35 );
         containerBounds = new OpenLayers.Bounds(10,10,40,40);
@@ -321,10 +321,10 @@
         t.eq( containerBounds.containsBounds(bounds, false, false), true, "(" + containerBounds.toBBOX() + ") correctly contains (" + bounds.toBBOX() + ") when partial is false, inclusive is false" );
         t.eq( containerBounds.containsBounds(bounds, true)        , true, "(" + containerBounds.toBBOX() + ") correctly contains (" + bounds.toBBOX() + ") when partial is true" );
         t.eq( containerBounds.containsBounds(bounds, true, true)  , true, "(" + containerBounds.toBBOX() + ") correctly contains (" + bounds.toBBOX() + ") when partial is true, inclusive is true" );
-        t.eq( containerBounds.containsBounds(bounds, true, false) , true, "(" + containerBounds.toBBOX() + ") correctly contains (" + bounds.toBBOX() + ") when partial is true, inclusive is false" );        
-        
+        t.eq( containerBounds.containsBounds(bounds, true, false) , true, "(" + containerBounds.toBBOX() + ") correctly contains (" + bounds.toBBOX() + ") when partial is true, inclusive is false" );
+
     }
-    
+
     function test_Bounds_determineQuadrant(t) {
 
        t.plan( 4 );
@@ -378,39 +378,39 @@
                 t.ok( bounds.getCenterPixel().equals(new OpenLayers.Pixel(50, 70)), "getCenterPixel() works correctly");
         t.ok( bounds.getCenterLonLat().equals(new OpenLayers.LonLat(50, 70)), "getCenterLonLat() works correctly");
     }
-    
+
     function test_getCenterLonLat(t) {
         t.plan(7);
         var bounds = new OpenLayers.Bounds(0, 10, 20, 60);
-        
+
         // set private centerLonLat to confirm that it is getting returned if set
         bounds.centerLonLat = "foo";
         t.eq(bounds.getCenterLonLat(), "foo", "returns cached value");
         bounds.centerLonLat = null;
-        
+
         // unmodified
         var center = bounds.getCenterLonLat();
         t.eq(center.lon, 10, "unmodified: correct x");
         t.eq(center.lat, 35, "unmodified: correct y");
-        
+
         // transformed
         bounds.transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
         center = bounds.getCenterLonLat();
         t.eq(Math.round(center.lon), 1113195, "transformed: correct x");
         t.eq(Math.round(center.lat), 4759314, "transformed: correct y");
-        
+
         // extended
         bounds.extend(new OpenLayers.Bounds(-10000000, -10000000, 10000000, 10000000));
         center = bounds.getCenterLonLat();
         t.eq(center.lon, 0, "extended: correct x");
         t.eq(center.lat, 0, "extended: correct y");
-        
-        
+
+
     }
 
     function test_Bounds_fromArray(t) {
        t.plan( 7 );
-       
+
        var bbox = [1,2,3,4];
        bounds = OpenLayers.Bounds.fromArray(bbox);
        t.ok( bounds instanceof OpenLayers.Bounds, "new OpenLayers.Bounds returns Bounds object" );
@@ -418,7 +418,7 @@
        t.eq( bounds.bottom, 2, "bounds.bottom is set correctly" );
        t.eq( bounds.right, 3, "bounds.right is set correctly" );
        t.eq( bounds.top, 4, "bounds.top is set correctly" );
-       
+
        // reverse axis order
        var reverseBbox = bounds.toArray(true);
        t.eq(reverseBbox, [2,1,4,3], "toArray with reverseAxisOrder set to true works as expected");
@@ -428,7 +428,7 @@
 
     function test_Bounds_fromSize(t) {
        t.plan( 5 );
-       
+
        var height = 15;
        var width = 16;
        var size = new OpenLayers.Size(width, height);
@@ -443,104 +443,138 @@
 
     function test_Bounds_extend(t) {
         t.plan( 9 );
-    
+
+        // null bounds to start
         var originalBounds = new OpenLayers.Bounds();
         var bounds = originalBounds.clone();
-        //null bounds to start
-        bounds.extend(new OpenLayers.LonLat(4,5));        
-        t.ok(bounds.equals(new OpenLayers.Bounds(4,5,4,5)), "uninitialized bounds can be safely extended");
-
 
+        bounds.extend(new OpenLayers.LonLat(4,5));
+        t.ok(bounds.equals(new OpenLayers.Bounds(4,5,4,5)), "uninitialized bounds can be safely extended");
 
+        // extend with null obj
         originalBounds = new OpenLayers.Bounds(10,20,50,80);
-
         bounds = originalBounds.clone();
-        
-      //null obj
-        bounds.extend(null);        
+
+        bounds.extend(null);
         t.ok(bounds.equals(originalBounds), "null to extend does not crash or change original bounds");
 
-      //obj with no classname        
+        // obj with no classname
         var object = {};
-        bounds.extend(object);        
+        bounds.extend(object);
         t.ok(bounds.equals(originalBounds), "extend() passing object with no classname does not crash or change original bounds")
 
-    //obj is bounds
 
-      //pushing all limits with bounds obj
+        // obj is bounds
+
+        // pushing all limits with bounds obj
         var testBounds = new OpenLayers.Bounds(5, 10, 60, 90);
         object = testBounds.clone();
-        
+
         bounds.extend(object);
         t.ok(bounds.equals(testBounds), "extend by valid bounds, pushing all limits, correctly extends bounds");
 
-      //pushing no limits with bounds obj
+        // pushing no limits with bounds obj
         bounds = originalBounds.clone();
 
         testBounds = new OpenLayers.Bounds(15, 30, 40, 70);
         object = testBounds.clone();
-        
+
         bounds.extend(object);
         t.ok(bounds.equals(originalBounds), "extend by valid bounds, pushing no limits, correctly does not extend bounds");
 
-    // obj is lonlat
-    
-      //left, bottom
+
+        // obj is lonlat
+
+        // left, bottom
         bounds = originalBounds.clone();
-        
+
         object = new OpenLayers.LonLat(5, 10);
-        
+
         bounds.extend(object);
-               
+
         t.ok( ((bounds.left == object.lon) &&
                (bounds.bottom == object.lat) &&
                (bounds.right == originalBounds.right) &&
-               (bounds.top == originalBounds.top)), "obj lonlat to extends correclty modifies left and bottom");
-              
-      //right, top
+               (bounds.top == originalBounds.top)), "obj lonlat to extends correctly modifies left and bottom");
+
+        // right, top
         bounds = originalBounds.clone();
-        
+
         object = new OpenLayers.LonLat(60,90);
-        
+
         bounds.extend(object);
 
         t.ok( ((bounds.left == originalBounds.left) &&
                (bounds.bottom == originalBounds.bottom) &&
                (bounds.right == object.lon) &&
-               (bounds.top == object.lat)), "obj lonlat to extends correclty modifies right and top");
-              
-    // obj is point
-    
-      //left, bottom
+               (bounds.top == object.lat)), "obj lonlat to extends correctly modifies right and top");
+
+
+        // obj is point
+
+        // left, bottom
         bounds = originalBounds.clone();
-        
+
         object = new OpenLayers.Geometry.Point(5, 10);
-        
+
         bounds.extend(object);
-               
+
         t.ok( ((bounds.left == object.x) &&
                (bounds.bottom == object.y) &&
                (bounds.right == originalBounds.right) &&
-               (bounds.top == originalBounds.top)), "obj Point to extends correclty modifies left and bottom");
-              
-      //right, top
+               (bounds.top == originalBounds.top)), "obj Point to extends correctly modifies left and bottom");
+
+        // right, top
         bounds = originalBounds.clone();
-        
+
         object = new OpenLayers.Geometry.Point(60,90);
-        
+
         bounds.extend(object);
 
         t.ok( ((bounds.left == originalBounds.left) &&
                (bounds.bottom == originalBounds.bottom) &&
                (bounds.right == object.x) &&
-               (bounds.top == object.y)), "obj Point to extends correclty modifies right and top");
+               (bounds.top == object.y)), "obj Point to extends correctly modifies right and top");
+
+    }
+
+
+    function test_Bounds_extendXY(t) {
+        t.plan(3);
+
+        // null bounds to start
+        var originalBounds = new OpenLayers.Bounds();
+
+        var bounds = originalBounds.clone();
+        bounds.extendXY(4, 5);
+
+        t.ok(bounds.equals(new OpenLayers.Bounds(4,5,4,5)), "uninitialized bounds can be safely extended");
+
+        // left, bottom
+        originalBounds = new OpenLayers.Bounds(10,20,50,80);
+
+        bounds = originalBounds.clone();
+        bounds.extendXY(5, 10);
+
+        t.ok( ((bounds.left == 5) &&
+               (bounds.bottom == 10) &&
+               (bounds.right == originalBounds.right) &&
+               (bounds.top == originalBounds.top)), "extendXY correctly modifies left and bottom");
 
+        // right, top
+        bounds = originalBounds.clone();
+        bounds.extendXY(60, 90);
+
+        t.ok( ((bounds.left == originalBounds.left) &&
+               (bounds.bottom == originalBounds.bottom) &&
+               (bounds.right == 60) &&
+               (bounds.top == 90)), "extendXY correctly modifies right and top");
     }
-     
-     
+
+
     function test_Bounds_wrapDateLine(t) {
         t.plan( 13 );
-        
+
         var testBounds, wrappedBounds, desiredBounds;
 
         var maxExtent = new OpenLayers.Bounds(-10,-10,10,10);
@@ -556,27 +590,27 @@
 
 
 
-    //exactly inside 
+    //exactly inside
         testBounds = exactBounds.clone();
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(exactBounds), "wrapping a bounds precisely within (equal to) maxextent does nothing");
 
 
-    //inside 
+    //inside
         testBounds = simpleBounds.clone();
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(simpleBounds), "wrapping a bounds within maxextent does nothing");
-    
+
 // LEFT //
 
     //straddling left
         testBounds = simpleBounds.add(-10,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(testBounds), "wrapping a bounds that straddles the left of maxextent does nothing");
-    
+
     //left rightTolerance
         testBounds = simpleBounds.add(-14,0);
-        wrappedBounds = 
+        wrappedBounds =
             testBounds.wrapDateLine(maxExtent, {'rightTolerance': 1} );
         desiredBounds = simpleBounds.add(6,0);
         t.ok(wrappedBounds.equals(desiredBounds), "wrapping a bounds rightTolerance left of maxextent works");
@@ -585,12 +619,12 @@
         testBounds = exactBounds.add(-20,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(exactBounds), "wrapping an exact bounds once left of maxextent works");
-    
+
     //left
         testBounds = simpleBounds.add(-20,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(simpleBounds), "wrapping a bounds once left of maxextent works");
-    
+
     //way left
         testBounds = simpleBounds.add(-200,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
@@ -603,24 +637,24 @@
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         desiredBounds = testBounds.add(-maxExtent.getWidth(), 0)
         t.ok(wrappedBounds.equals(desiredBounds), "wrapping a bounds that straddles the right of maxextent moves extent to left side of the world");
-    
+
     //right leftTolerance
         testBounds = simpleBounds.add(14,0);
-        wrappedBounds = 
+        wrappedBounds =
             testBounds.wrapDateLine(maxExtent, {'leftTolerance': 1} );
         desiredBounds = simpleBounds.add(-6,0);
         t.ok(wrappedBounds.equals(desiredBounds), "wrapping a bounds leftTolerance right of maxextent works");
-    
+
     //exactly right
         testBounds = exactBounds.add(20,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(exactBounds), "wrapping an exact bounds once right of maxextent works");
-    
+
     //right
         testBounds = simpleBounds.add(20,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
         t.ok(wrappedBounds.equals(simpleBounds), "wrapping a bounds once right of maxextent works");
-    
+
     //way right
         testBounds = simpleBounds.add(200,0);
         wrappedBounds = testBounds.wrapDateLine(maxExtent);
@@ -632,20 +666,20 @@
     function test_Bounds_transform(t) {
         t.plan( 5 );
         bounds = new OpenLayers.Bounds(10, -10, 20, 10);
-        bounds.transform(new OpenLayers.Projection("foo"), new OpenLayers.Projection("Bar")); 
+        bounds.transform(new OpenLayers.Projection("foo"), new OpenLayers.Projection("Bar"));
         t.eq(bounds.toBBOX(), "10,-10,20,10", "null transform okay");
-        bounds.transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913")); 
+        bounds.transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
         t.eq(bounds.toBBOX(), "1113194.907778,-1118889.974702,2226389.815556,1118889.974702", "bounds for spherical mercator transform are correct");
-        bounds.transform(new OpenLayers.Projection("EPSG:900913"), new OpenLayers.Projection("EPSG:4326")); 
+        bounds.transform(new OpenLayers.Projection("EPSG:900913"), new OpenLayers.Projection("EPSG:4326"));
         t.eq(bounds.toBBOX(), "10,-10,20,10", "bounds for inverse spherical mercator transform are correct");
 
         // transform with string
         bounds = new OpenLayers.Bounds(10, -10, 20, 10);
-        bounds.transform("EPSG:4326", "EPSG:900913"); 
+        bounds.transform("EPSG:4326", "EPSG:900913");
         t.eq(bounds.toBBOX(), "1113194.907778,-1118889.974702,2226389.815556,1118889.974702", "(string) bounds for spherical mercator transform are correct");
-        bounds.transform("EPSG:900913", "EPSG:4326"); 
+        bounds.transform("EPSG:900913", "EPSG:4326");
         t.eq(bounds.toBBOX(), "10,-10,20,10", "(string) bounds for inverse spherical mercator transform are correct");
-        
+
     }
 
     function test_Bounds_add(t) {
@@ -659,7 +693,7 @@
 
         var b = new OpenLayers.Bounds(6,52,8,54);
         t.ok( bounds.equals(b), "bounds is set correctly");
-        
+
     //null values
         try {
             bounds = testBounds.add(null, 50);
@@ -667,12 +701,12 @@
             t.ok("exception thrown when passing null value to add()");
         }
         t.ok( testBounds.equals(origBounds), "testBounds is not modified by erroneous add operation (null x)");
- 
+
         try {
             bounds = testBounds.add(5, null);
         } catch(e) {
             t.ok("exception thrown when passing null value to add()");
-        }            
+        }
         t.ok( testBounds.equals(origBounds), "testBounds is not modified by erroneous add operation (null y)");
     }
 
@@ -680,7 +714,7 @@
         t.plan(3);
 
         origBounds = new OpenLayers.Bounds(1,2,3,4);
-        bounds = origBounds.scale(2);  
+        bounds = origBounds.scale(2);
         var b = new OpenLayers.Bounds(0,1,4,5);
         t.ok(bounds.equals(b), "Bounds scale correctly with default origin at center")
 
diff --git a/tests/BaseTypes/Date.html b/tests/BaseTypes/Date.html
index a433d84..e54fb31 100644
--- a/tests/BaseTypes/Date.html
+++ b/tests/BaseTypes/Date.html
@@ -175,6 +175,15 @@
         t.ok(isNaN(invalid.getTime()), "invalid has no time");
     }
 
+    function test_regex(t) {
+        t.plan(1);
+        var regex = OpenLayers.Date.dateRegEx;
+        OpenLayers.Date.dateRegEx = /^(?:(-?\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))|Z)?$/;
+        var date = OpenLayers.Date.parse("-0501-03-01T00:00:00.000Z");
+        t.ok(!isNaN(date.getTime()), "date with negative year is parsed when providing alternative regex");
+        OpenLayers.Date.dateRegEx = regex;
+    }
+
   </script>
 </head>
 <body>
diff --git a/tests/Control/CacheWrite.html b/tests/Control/CacheWrite.html
index fdb6cab..9922569 100644
--- a/tests/Control/CacheWrite.html
+++ b/tests/Control/CacheWrite.html
@@ -40,7 +40,7 @@
             return;
         }
 
-        t.plan(3);
+        t.plan(4);
         OpenLayers.Control.CacheWrite.clearCache();
         var length = window.localStorage.length;
         
@@ -68,6 +68,9 @@
             // content will be null for browsers that have localStorage but no canvas support
             var content = canvasContext ? canvasContext.canvas.toDataURL("image/png") : null;
             t.eq(window.localStorage.getItem("olCache_"+url), content, "localStorage contains correct image data");
+
+            layer.events.triggerEvent('tileloaded', {aborted: true, tile: layer.grid[1][1]});
+            t.eq(window.localStorage.length, length + (canvasContext ? tiles-1 : 0), "tile aborted during load not cached");
             
             var key = Math.random();
             window.localStorage.setItem(key, "bar");
diff --git a/tests/Control/Geolocate.html b/tests/Control/Geolocate.html
index aa12c04..4e43f39 100644
--- a/tests/Control/Geolocate.html
+++ b/tests/Control/Geolocate.html
@@ -101,18 +101,6 @@
         map.removeControl(control);
         map.setCenter(centerLL);
     }
-    function test_uncapable(t) {
-        t.plan(1);
-        var control = new OpenLayers.Control.Geolocate({
-            geolocation: null,
-            bind: false
-        });
-        control.events.register('locationuncapable', null, function() {
-            t.ok(true,'uncapable browser fired locationuncapable event');
-        });
-        map.addControl(control);
-        control.activate();
-    }
     function test_destroy(t) {
         t.plan(1);
         var control = new OpenLayers.Control.Geolocate({
diff --git a/tests/Control/LayerSwitcher.html b/tests/Control/LayerSwitcher.html
index 0094e77..c81a779 100644
--- a/tests/Control/LayerSwitcher.html
+++ b/tests/Control/LayerSwitcher.html
@@ -88,13 +88,13 @@
         control = new OpenLayers.Control.LayerSwitcher();
         map.addControl(control);
 
-        var wmsInput = OpenLayers.Util.getElement(control.id + "_input_" + layer.name);
+        var wmsInput = control.div.childNodes[0].childNodes[1].childNodes[0];
         t.ok(wmsInput != null, "correctly makes an input for wms layer");
         t.eq(wmsInput.type, "radio", "wms correctly made a radio button");
         t.eq(wmsInput.name, control.id + "_baseLayers", "wms correctly named");
         t.eq(wmsInput.value, layer.name, "wms correctly valued");
         
-        var markersInput = OpenLayers.Util.getElement(control.id + "_input_" + markers.name);
+        var markersInput = control.div.childNodes[0].childNodes[3].childNodes[0];
         t.ok(markersInput != null, "correctly makes an input for markers layer");
         t.eq(markersInput.type, "checkbox", "wms correctly made a radio button");
         t.eq(markersInput.name, markers.name, "wms correctly named");
@@ -191,7 +191,54 @@
         t.eq(control.div.childNodes[0].childNodes[0].style.display, "" , "Base layer display on when visble base layer");
     }
 
-
+    // See e.g. https://github.com/openlayers/openlayers/issues/866
+    function test_Control_LayerSwitcher_validIds(t){
+        t.plan(2);
+
+        // setup
+        var layername = "Name with spaces & illegal characters * + ~ ` ' ? )",
+            map = new OpenLayers.Map("map", {
+                controls: [
+                    new OpenLayers.Control.LayerSwitcher()
+                ],
+                layers: [
+                    new OpenLayers.Layer.WMS(
+                        layername,
+                        "../../img/blank.gif"
+                    ),
+                    // add another layer with the same name, the generated id
+                    // must be different
+                    new OpenLayers.Layer.WMS(
+                        layername,
+                        "../../img/blank.gif"
+                    )
+                ]
+            });
+
+        var baselayerDiv = map.controls[0].div.childNodes[0].childNodes[1],
+            firstGeneratedInputId = baselayerDiv.childNodes[0].id,
+            secondGeneratedInputId = baselayerDiv.childNodes[1].id,
+            // legal ids start with a letter and are followed only by word
+            // characters (letters, digits, and underscores) plus the dash (-)
+            // This is only a subset of all allowed charcters inside of ids.
+            allowedIdChars = (/^[a-zA-Z]{1}[\w-]*$/g);
+
+        // tests
+        // validity
+        t.ok(
+            allowedIdChars.test(firstGeneratedInputId),
+            "id only contains letters, digits, underscores and dashes. It " +
+                "starts with a letter."
+        );
+        // uniqueness
+        t.ok(
+            firstGeneratedInputId !== secondGeneratedInputId,
+            "generated ids are different even for equal layernames"
+        );
+
+        // teardown
+        map.destroy();
+    }
 
   </script>
 </head>
diff --git a/tests/Control/ModifyFeature.html b/tests/Control/ModifyFeature.html
index 51a10ac..6226733 100644
--- a/tests/Control/ModifyFeature.html
+++ b/tests/Control/ModifyFeature.html
@@ -13,34 +13,27 @@
             }
         };
         var options = {
-            geometryTypes: "bar"
+            documentDrag: true
         };
         var control = new OpenLayers.Control.ModifyFeature(layer, options);
         
         t.ok(control.layer == layer,
              "constructor sets layer correctly");
-        t.eq(control.selectControl.geometryTypes, "bar",
-             "constructor sets options correctly on feature handler");
+        t.eq(control.handlers.drag.documentDrag, true,
+             "constructor sets options correctly on drag handler");
         t.eq(control.mode, OpenLayers.Control.ModifyFeature.RESHAPE,
              "constructor initializes modification mode correctly");
         control.destroy();
     }
 
     function test_destroy(t) {
-        t.plan(2);
+        t.plan(1);
         var map = new OpenLayers.Map("map");
         var layer = new OpenLayers.Layer.Vector();
         map.addLayer(layer);
         var control = new OpenLayers.Control.ModifyFeature(layer);
-        control.selectControl.destroy = function() {
-            t.ok(true,
-                 "control.destroy calls destroy on select control");
-        }
-        control.dragControl.destroy = function() {
-            t.ok(true,
-                 "control.destroy calls destroy on feature handler");
-        }
         control.destroy();
+        t.eq(control.layer, null, "Layer reference removed on destroy.");
         map.destroy();
     }
     
@@ -51,11 +44,11 @@
         map.addLayer(layer);
         var control = new OpenLayers.Control.ModifyFeature(layer);
         map.addControl(control);
-        t.ok(!control.selectControl.active,
-             "select control is not active prior to activating control");
+        t.ok(!control.handlers.drag.active,
+             "drag handler is not active prior to activating control");
         control.activate();
-        t.ok(control.selectControl.active,
-             "select control is active after activating control");
+        t.ok(control.handlers.drag.active,
+             "drag handler is active after activating control");
 
         map.destroy();
     }
@@ -99,7 +92,8 @@
         );
         
         // mock up vertex deletion
-        control.dragControl.feature = point;
+        var origGetFeatureFromEvent = layer.getFeatureFromEvent;
+        layer.getFeatureFromEvent = function() { return point; };
         control.feature = poly;
         // we cannot use selectFeature since the control is not part of a map
         control._originalGeometry = poly.geometry.clone();
@@ -139,17 +133,18 @@
         t.eq(control.feature.state, OpenLayers.State.UPDATE, "feature state set to update");
 
         // now make sure nothing happens if the vertex is mid-drag
-        control.dragControl.handlers.drag.dragging = true;
+        control.handlers.drag.dragging = true;
         control.handleKeypress({keyCode:delKey});
 
         //  clean up
+        layer.getFeatureFromEvent = origGetFeatureFromEvent;
         control.destroy();
         layer.destroy();
     }    
         
 
     function test_onUnSelect(t) {
-        t.plan(6);
+        t.plan(5);
         var layer = new OpenLayers.Layer.Vector();
         var control = new OpenLayers.Control.ModifyFeature(layer);
         var fakeFeature = {'id':'myid'};
@@ -159,7 +154,6 @@
         layer.events.on({"afterfeaturemodified": function(event) {
             t.eq(event.feature, fakeFeature, "afterfeaturemodified triggered");
         }});
-        control.dragControl.deactivate = function() { t.ok(true, "Deactivate called on drag control"); }
         control.onModificationEnd = function (feature) { t.eq(feature.id, fakeFeature.id, "onModificationEnd got feature.") }
         layer.removeFeatures = function(verts) {
             t.ok(verts == 'a', "Normal verts removed correctly");
@@ -190,10 +184,6 @@
         // If a feature is to be modified, control.selectFeature gets called.
         // We want this test to fail if selectFeature gets called.
         var modified = false;
-        var _ = OpenLayers.Control.ModifyFeature.prototype.selectFeature;
-        OpenLayers.Control.ModifyFeature.prototype.selectFeature = function() {
-            modified = true;
-        }
 
         var control = new OpenLayers.Control.ModifyFeature(layer);
         map.addControl(control);
@@ -202,17 +192,15 @@
         // register a listener that will stop feature modification
         layer.events.on({"beforefeaturemodified": function() {return false}});
 
-        // we can initiate feature modification by selecting a feature with
-        // the control's select feature control
-        control.selectControl.select(feature);
+        // we can initiate feature modification by programmatically selecting
+        // a feature
+        control.selectFeature(feature);
         
         if(modified) {
             t.fail("selectFeature called, prepping feature for modification");
         } else {
             t.ok(true, "the beforefeaturemodified listener stopped feature modification");
         }
-        
-        OpenLayers.Control.ModifyFeature.prototype.selectFeature = _;
     }
 
     function test_selectFeature(t) {
@@ -228,7 +216,6 @@
             t.ok(obj.feature == fakeFeature, "beforefeaturemodified triggered");
         };
         layer.events.on({"beforefeaturemodified": callback});
-        control.dragControl.activate = function() { t.ok(true, "drag Control activated"); }
         control.onModificationStart = function(feature)  { t.eq(feature.id, fakeFeature.id, "On Modification Start called with correct feature."); } 
         
         // Start of testing
@@ -238,6 +225,7 @@
         
         // Points don't call collectVertices
         control.selectFeature(fakeFeature);
+        control.unselectFeature(fakeFeature);
         
         control.collectVertices = function() { 
           t.ok(true, "collectVertices called"); 
@@ -250,7 +238,8 @@
         layer.addFeatures = function(features) { 
             t.ok(features == 'a' || features == 'd', "features passed correctly"); 
         }
-        
+        layer.destroyFeatures = function() {};
+
         fakeFeature.geometry = new OpenLayers.Geometry.Polygon([
             new OpenLayers.Geometry.LinearRing([
                 new OpenLayers.Geometry.Point(0, 0),
@@ -259,10 +248,12 @@
         ]);
         
         // OnSelect calls collectVertices and passes features to layer 
-        control.selectFeature(fakeFeature);
+        control.selectFeature(fakeFeature);        
+        control.unselectFeature(fakeFeature);
+        layer.destroyFeatures = OpenLayers.Layer.Vector.prototype.destroyFeatures;
         
         control.vertices = ['a'];
-        control.virtualVertices = ['b'];
+        control.virtualVertices = [{destroy: function() {}}];
         
         layer.addFeatures = function(features) {} 
         
@@ -283,7 +274,7 @@
     }  
 
     function test_resetVertices(t) {
-        t.plan(21);
+        t.plan(20);
         var layer = new OpenLayers.Layer.Vector();
         var control = new OpenLayers.Control.ModifyFeature(layer);
         var point = new OpenLayers.Geometry.Point(5,6);
@@ -340,18 +331,6 @@
         t.eq(control.vertices.length, 0, "No vertices when both resizing and reshaping (RESIZE|RESHAPE)");
         t.eq(control.virtualVertices.length, 0, "No virtual vertices when both resizing and reshaping (RESIZE|RESHAPE)");
         
-        control.dragControl.feature = new OpenLayers.Feature.Vector(polygon);
-        control.dragControl.map = {};
-        control.dragControl.map.div = {};
-        control.dragControl.map.div.style = {};
-        control.dragControl.map.viewPortDiv = "foo";
-        control.dragControl.handlers.drag.deactivate = function() {
-            this.active = false;
-        }
-        control.resetVertices();
-        t.ok(!control.dragControl.handlers.drag.active, "resetVertices deactivates drag handler");
-        control.dragControl.map = null;
-        
         control.destroy();
         layer.destroy();
     }
@@ -512,17 +491,19 @@
         var control = new OpenLayers.Control.ModifyFeature(layer);
         map.addControl(control);
         
-        control.selectControl.deactivate = function() {
+        control.handlers.keyboard.deactivate = function() {
             t.ok(true,
-                 "control.deactivate calls deactivate on select control");
+                 "control.deactivate calls deactivate on keyboard handler");
         }
-        control.dragControl.deactivate = function() {
+        control.handlers.drag.deactivate = function() {
             t.ok(true,
-                 "control.deactivate calls deactivate on drag control");
+                 "control.deactivate calls deactivate on drag handler");
         }
         control.active = true;
         control.deactivate();
         
+        control.handlers.keyboard.deactivate = OpenLayers.Handler.Keyboard.prototype.deactivate;
+        control.handlers.drag.deactivate = OpenLayers.Handler.Drag.prototype.deactivate;
         map.destroy();
     }
 
@@ -609,14 +590,17 @@
         layer.events.on({"featuremodified": function(event) {
             t.eq(event.feature.id, poly.id, "featuremodified triggered");
         }});
+
         control.onModification = function(feature) {
             t.eq(feature.id, poly.id,
                 "onModification called with the right feature on vertex delete");
         };
         point.geometry.parent = poly.geometry;
-        control.dragControl.feature = point;
+        origGetFeatureFromEvent = layer.getFeatureFromEvent;
+        layer.getFeatureFromEvent = function() { return point; };
         control.handleKeypress({keyCode:46});
         layer.drawFeature = oldDraw;
+        layer.getFeatureFromEvent = origGetFeatureFromEvent;
         
         map.destroy();
     }
@@ -694,7 +678,7 @@
     
     function test_standalone(t) {
         
-        t.plan(18);
+        t.plan(17);
         var map = new OpenLayers.Map("map");
         var layer = new OpenLayers.Layer.Vector();
         
@@ -733,7 +717,6 @@
         // activate control
         control.activate();
         t.eq(control.active, true, "[activate] control activated");
-        t.eq(control.selectControl, null, "[activate] no select control");
         
         // manually select feature for editing
         control.selectFeature(f1);
@@ -761,22 +744,19 @@
         t.ok(log[0].feature === f2, "[deactivate] correct feature");
         t.eq(log[0].modified, false, "[deactivate] feature not actually modified");
         
-        // reactivate control and select a point feature to see if we can drag
-        // another point feature;
-        control.activate();
-        control.selectFeature(f3);
-        control.dragControl.handlers.feature.triggerCallback("mousemove", "in", [f4]);
-        t.eq(control.dragControl.handlers.drag.active, false, "cannot drag unselected feature f4");
-        control.dragControl.handlers.feature.triggerCallback("mousemove", "in", [f3]);
-        t.eq(control.dragControl.handlers.drag.active, true, "can drag selected feature f3");
-        
         // select the polygon feature to make sure that we can drag vertices and
         // virtual vertices
         control.selectFeature(f2);
-        control.dragControl.handlers.feature.triggerCallback("mousemove", "in", [control.vertices[0]]);
-        t.eq(control.dragControl.handlers.drag.active, true, "can drag vertex of feature f2");
-        control.dragControl.handlers.feature.triggerCallback("mousemove", "in", [control.virtualVertices[0]]);
-        t.eq(control.dragControl.handlers.drag.active, true, "can drag virtual vertex of feature f2");
+        var origGetFeatureFromEvent = layer.getFeatureFromEvent;
+        layer.getFeatureFromEvent = function() { return control.vertices[0]; };
+        control.handlers.drag.callbacks.down.call(control, new OpenLayers.Pixel(0,0));
+        t.ok(control.vertex === control.vertices[0], "can drag vertex of feature f2");
+        t.ok(control.feature === f2, "dragging a vertex does not change the selected feature");
+        layer.getFeatureFromEvent = function() { return control.virtualVertices[0]; };
+        control.handlers.drag.callbacks.down.call(control, new OpenLayers.Pixel(0,0));
+        t.ok(control.vertex === control.virtualVertices[0], "can drag virtual vertex of feature f2");
+        t.ok(control.feature === f2, "dragging a vertex does not change the selected feature");
+        layer.getFeatureFromEvent = origGetFeatureFromEvent;
         control.deactivate();
         
         map.destroy();
@@ -826,6 +806,20 @@
         control.destroy();
     }
 
+    function test_moveLayerToTop_moveLayerBack(t) {
+        t.plan(2);
+        var map = new OpenLayers.Map("map");
+        var layer1 = new OpenLayers.Layer.Vector();
+        var layer2 = new OpenLayers.Layer.Vector();
+        map.addLayers([layer1, layer2]);
+        var control = new OpenLayers.Control.ModifyFeature(layer1);
+        map.addControl(control);
+        control.activate();
+        t.ok(layer1.div.style.zIndex > layer2.div.style.zIndex, "layer raised so events don't get swallowed");
+        control.deactivate();
+        t.ok(layer1.div.style.zIndex < layer2.div.style.zIndex, 'layer order restored on deactivation');
+    }
+
     </script>
 </head>
 <body>
diff --git a/tests/Control/Navigation.html b/tests/Control/Navigation.html
index 70428f5..e73ee42 100644
--- a/tests/Control/Navigation.html
+++ b/tests/Control/Navigation.html
@@ -148,6 +148,7 @@
         var nav = new OpenLayers.Control.Navigation({zoomWheelEnabled: false});
         var map = new OpenLayers.Map({
             div: "map",
+            zoomMethod: null,
             controls: [nav],
             layers: [
                 new OpenLayers.Layer(null, {isBaseLayer: true})
diff --git a/tests/Control/NavigationHistory.html b/tests/Control/NavigationHistory.html
index b766b0e..c992ff2 100644
--- a/tests/Control/NavigationHistory.html
+++ b/tests/Control/NavigationHistory.html
@@ -170,7 +170,7 @@
 
     function test_clear(t) {
         t.plan(7);
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {zoomMethod: null});
         var layer = new OpenLayers.Layer(
             "test", {isBaseLayer: true}
         );
diff --git a/tests/Control/OverviewMap.html b/tests/Control/OverviewMap.html
index 30cac5d..a5a598d 100644
--- a/tests/Control/OverviewMap.html
+++ b/tests/Control/OverviewMap.html
@@ -14,6 +14,23 @@
             "olControlOverviewMap", "displayClass is correct" );
     }
 
+    function test_divs_title(t) {
+        t.plan(2);
+    
+        control = new OpenLayers.Control.OverviewMap({
+            maximizeTitle: "maximize title",
+            minimizeTitle: "minimize title"
+        });
+        map = new OpenLayers.Map('map', {
+            layers: [new OpenLayers.Layer("layer", {isBaseLayer: true})],
+            controls: [control]
+        });
+        map.zoomToMaxExtent();
+        t.eq(control.maximizeDiv.title, "maximize title", "maximizeDiv.title is correct");
+        t.eq(control.minimizeDiv.title, "minimize title", "minimizeDiv.title is correct");
+        map.destroy();
+    }
+
     function test_setMap(t) {
         t.plan(4);
 
@@ -209,6 +226,37 @@
 
         map.destroy();
     }
+    
+    function test_custom_div(t) {
+        t.plan(3);
+        var div = document.createElement('div');
+        
+        control = new OpenLayers.Control.OverviewMap({
+          div: div
+        });
+        
+        map = new OpenLayers.Map('map', {
+            layers  : [new OpenLayers.Layer("layer", {isBaseLayer: true})],
+            controls: [control]
+        });
+        
+        t.eq(control.maximizeDiv, null, 
+            "OverviewMap does not create maximize div");
+        t.eq(control.minimizeDiv, null, 
+            "OverviewMap does not create minimize div");
+        
+        var exc;
+        try {
+            control.maximizeControl();
+            control.minimizeControl();
+        } catch(e) {
+            exc = e;
+        }
+
+        t.eq(exc, undefined, 'maximize and minimize do not trigger an exception');
+        
+        map.destroy();
+    }
 
   </script>
 </head>
diff --git a/tests/Control/Pan.html b/tests/Control/Pan.html
new file mode 100644
index 0000000..0c9dfaf
--- /dev/null
+++ b/tests/Control/Pan.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <script src="../OLLoader.js"></script>
+        <script type="text/javascript">
+        
+function test_Pan_constructor (t) {
+    t.plan( 2 );
+    
+    // setup
+    var control = new OpenLayers.Control.Pan(
+        "Gargoyle" // the direction, here mocked up
+    );
+    
+    // tests
+    //
+    t.ok( 
+        control instanceof OpenLayers.Control.Pan, 
+        "new OpenLayers.Control.Pan returns object"
+    );
+    t.eq( 
+        control.displayClass, "olControlPanGargoyle", 
+        "displayClass is correct"
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_Pan_type (t) {
+    t.plan( 1 );
+    
+    // setup
+    var control = new OpenLayers.Control.Pan();
+    
+    // tests
+    //
+    t.eq( 
+        control.type, 
+        OpenLayers.Control.TYPE_BUTTON,
+        "Pan control is of type OpenLayers.Control.TYPE_BUTTON"
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_Pan_constants (t) {
+    var dirs = [
+            'North',
+            'East',
+            'South',
+            'West'
+        ],
+        numDirs = dirs.length,
+        dir, uc_dir;
+    
+    t.plan(numDirs);
+    
+    for ( ; numDirs > 0; numDirs-- ) {
+        dir = dirs[numDirs - 1 ];
+        uc_dir = dir.toUpperCase();
+        
+        t.eq(
+            OpenLayers.Control.Pan[ uc_dir ],
+            dir,
+            "A constant 'OpenLayers.Control.Pan." + uc_dir + "' is defined "+
+                "and has the correct value of '" + dir + "'."
+        );
+    }
+}
+
+function test_Pan_trigger (t) {
+    t.plan( 12 );
+    
+    // set up
+    var controls = {
+            n: new OpenLayers.Control.Pan(OpenLayers.Control.Pan.NORTH),
+            e: new OpenLayers.Control.Pan(OpenLayers.Control.Pan.EAST),
+            s: new OpenLayers.Control.Pan(OpenLayers.Control.Pan.SOUTH),
+            w: new OpenLayers.Control.Pan(OpenLayers.Control.Pan.WEST)
+        },
+        controlKey, control,
+        zoomlevel = 5,
+        center = new OpenLayers.LonLat(25,25),
+        log = {
+            dx: null,
+            dy: null
+        },
+        map = new OpenLayers.Map("map", {
+            allOverlays: true,
+            layers: [
+                new OpenLayers.Layer.Vector()
+            ],
+            center: center,
+            zoom: zoomlevel
+        }),
+        oldZoom;
+    
+    // overwrite native Map::pan
+    map.pan = function(dx, dy) {
+        log = {
+            dx: dx,
+            dy: dy
+        };
+        OpenLayers.Map.prototype.pan.apply(map, arguments);
+    };
+    
+    oldCenter = map.getCenter().toString();
+    
+    for (controlKey in controls) {
+        if (controls.hasOwnProperty(controlKey)) {
+            control = controls[controlKey];
+            // trigger the control; nothing should change, we aren't added yet.
+            control.trigger();
+            
+            t.ok(
+                log.dx === null && log.dy === null, 
+                'Calling trigger on a non added control doesn\'t do anything.'
+            );
+            
+            // reset log object
+            log = {
+                dx: null,
+                dy: null
+            };
+        }
+    }
+    
+    // now lets add the controls, and trigger them again
+    for (controlKey in controls) {
+        if (controls.hasOwnProperty(controlKey)) {
+            control = controls[controlKey];
+            map.addControl(control);
+            // trigger again, now ...
+            control.trigger();
+            
+            // ... the center should change ...
+            t.ok(
+                log.dx !== null && log.dy !== null,
+                'Calling trigger on an added pan control calls map.pan()... '
+            );
+            
+            // ... with sane arguments according to the passed direction.
+            switch (control.direction) {
+                case OpenLayers.Control.Pan.NORTH: 
+                    t.ok(
+                        log.dx === 0 && log.dy < 0,
+                        '... with sane arguments: pan north only results in ' +
+                            'negative delta y'
+                    );
+                    break;
+                case OpenLayers.Control.Pan.SOUTH: 
+                    t.ok(
+                        log.dx === 0 && log.dy > 0,
+                        '... with sane arguments: pan south only results in ' +
+                            'positive delta y'
+                    );
+                    break;
+                case OpenLayers.Control.Pan.WEST: 
+                    t.ok(
+                        log.dx < 0 && log.dy === 0,
+                        '... with sane arguments: pan west only results in ' +
+                            'negative delta x'
+                    );
+                    break;
+                case OpenLayers.Control.Pan.EAST: 
+                    t.ok(
+                        log.dx > 0 && log.dy === 0,
+                        '... with sane arguments: pan east only results in ' +
+                            'positive delta x'
+                    );
+                    break;
+            }
+            
+            // reset log-object
+            log = {
+                dx: null,
+                dy: null
+            };
+            // always set to initial center and zoom:
+            map.setCenter(center, zoomlevel);
+        }
+    }
+    
+    // tear down
+    for (controlKey in controls) {
+        if (controls.hasOwnProperty(controlKey)) {
+            control = controls[controlKey];
+            control.destroy();
+        }
+    }
+    map.destroy();
+}
+    
+        </script>
+    </head>
+    <body>
+        <div id="map" style="width: 1000px; height: 1000px;"></div>
+    </body>
+</html>
diff --git a/tests/Control/PanZoomBar.html b/tests/Control/PanZoomBar.html
index 852c00f..5ed2833 100644
--- a/tests/Control/PanZoomBar.html
+++ b/tests/Control/PanZoomBar.html
@@ -33,6 +33,31 @@
         map.addControl(control2, new OpenLayers.Pixel(100,100));
         t.eq( control2.div.style.top, "100px", "2nd control div is located correctly");
     }
+    
+    function test_draw(t) {
+        t.plan(3);
+        map = new OpenLayers.Map('map', {controls:[]});
+        var layer = new OpenLayers.Layer.WMS("Test Layer",
+            "http://octo.metacarta.com/cgi-bin/mapserv?",
+            {map: "/mapdata/vmap_wms.map", layers: "basic"});
+        map.addLayer(layer);
+        map.zoomToMaxExtent();
+        control = new OpenLayers.Control.PanZoomBar();
+        map.addControl(control);
+        t.eq(control.zoombarDiv.style.height, '176px', "Bar's height is correct.");
+
+        map.baseLayer.wrapDateLine = true;
+
+        control.redraw();
+        t.eq(control.zoombarDiv.style.height, '154px', "Bar's height is correct after minZoom restriction.");
+
+        map.div.style.width = "512px";
+        map.updateSize();
+        t.eq(control.zoombarDiv.style.height, '165px', "Bar's height is correct after resize and minZoom restriction.");
+
+        map.div.style.width = "1024px";
+        map.destroy();
+    }
 
     function test_Control_PanZoomBar_clearDiv(t) {
         t.plan(2);
@@ -52,7 +77,7 @@
 
     function test_Control_PanZoomBar_onButtonClick (t) {
         t.plan(2);
-        map = new OpenLayers.Map('map', {controls:[]});
+        map = new OpenLayers.Map('map', {controls:[], zoomMethod: null});
         var layer = new OpenLayers.Layer.WMS("Test Layer",
             "http://octo.metacarta.com/cgi-bin/mapserv?",
             {map: "/mapdata/vmap_wms.map", layers: "basic"});
@@ -72,7 +97,8 @@
         t.plan(1);
         map = new OpenLayers.Map('map', {
             controls: [],
-            fractionalZoom: true
+            fractionalZoom: true,
+            zoomMethod: null
         });
         var layer = new OpenLayers.Layer.WMS("Test Layer", "http://octo.metacarta.com/cgi-bin/mapserv?", {
             map: "/mapdata/vmap_wms.map",
@@ -102,7 +128,8 @@
         
         var map = new OpenLayers.Map('map', {
             controls: [],
-            fractionalZoom: true
+            fractionalZoom: true,
+            zoomMethod: null
         });
         var layer = new OpenLayers.Layer.WMS("Test Layer", "http://octo.metacarta.com/cgi-bin/mapserv?", {
             map: "/mapdata/vmap_wms.map",
diff --git a/tests/Control/Permalink.html b/tests/Control/Permalink.html
index b398adf..0b729da 100644
--- a/tests/Control/Permalink.html
+++ b/tests/Control/Permalink.html
@@ -139,7 +139,7 @@
   }
   function test_Control_Permalink_base_with_query (t) {
       t.plan( 3 );
-  
+	
       control = new OpenLayers.Control.Permalink('permalink', "./edit.html?foo=bar" );
       map = new OpenLayers.Map('map');
       layer = new OpenLayers.Layer.WMS('Test Layer', "http://example.com" );
@@ -162,7 +162,38 @@
       map.pan(-5, 0, {animate:false});
       t.eq(OpenLayers.Util.getElement('permalink').href, OpenLayers.Util.getElement('edit_permalink').href, "Panning sets permalink with base and querystring ending with '?'");
       map.destroy();
+  }
 
+  function test_Control_Permalink_base_with_anchor (t) {
+      t.plan( 4 );
+      control = new OpenLayers.Control.Permalink('permalink', "./edit.html#foo" );
+      map = new OpenLayers.Map('map');
+      layer = new OpenLayers.Layer.WMS('Test Layer', "http://example.com" );
+      map.addLayer(layer);
+      if (!map.getCenter())  map.zoomToMaxExtent();
+      map.addControl(control);
+      map.pan(5, 0, {animate:false});
+      OpenLayers.Util.getElement('edit_permalink').href = './edit.html?zoom=2&lat=0&lon=1.75781&layers=B#foo';
+      t.eq(OpenLayers.Util.getElement('permalink').href, OpenLayers.Util.getElement('edit_permalink').href, "Panning sets permalink with base and anchor");
+      
+      control = new OpenLayers.Control.Permalink('permalink', "./edit.html#" );
+      map.addControl(control);
+      map.pan(0, 0, {animate:false});
+      OpenLayers.Util.getElement('edit_permalink').href = './edit.html?zoom=2&lat=0&lon=1.75781&layers=B#';
+      t.eq(OpenLayers.Util.getElement('permalink').href, OpenLayers.Util.getElement('edit_permalink').href, "Panning sets permalink with base and an empty anchor");
+      
+      control = new OpenLayers.Control.Permalink('permalink', "./edit.html?foo=bar#test" );
+      OpenLayers.Util.getElement('edit_permalink').href = './edit.html?foo=bar&zoom=2&lat=0&lon=1.75781&layers=B#test';
+      map.addControl(control);
+      map.pan(5, 0, {animate:false});
+      map.pan(-5, 0, {animate:false});
+      t.eq(OpenLayers.Util.getElement('permalink').href, OpenLayers.Util.getElement('edit_permalink').href, "Panning sets permalink with base, querystring and an anchor");
+	  
+	  control = new OpenLayers.Control.Permalink('permalink', "./edit.html#foo", {anchor : true} );
+      map.addControl(control);
+      map.pan(0, 0, {animate:false});
+      OpenLayers.Util.getElement('edit_permalink').href = './edit.html#zoom=2&lat=0&lon=1.75781&layers=B';
+      t.eq(OpenLayers.Util.getElement('permalink').href, OpenLayers.Util.getElement('edit_permalink').href, "Panning sets permalink with base and an empty anchor");
   }
 
     function test_Control_Permalink_nonRepeating (t) {
diff --git a/tests/Control/PinchZoom.html b/tests/Control/PinchZoom.html
index 2e2de47..22db6a5 100644
--- a/tests/Control/PinchZoom.html
+++ b/tests/Control/PinchZoom.html
@@ -45,12 +45,12 @@
         });
         
         var log = [];
-        control.applyTransform = function(transform) {
-            log.push(transform);
+        map.applyTransform = function(x, y, scale) {
+            log.push([x, y, scale]);
         }
         
-        control.containerCenter = {
-            x: 0, y: 0
+        map.layerContainerOriginPx = {
+            x: -50, y: -50
         };
 
         control.pinchOrigin = {
@@ -58,12 +58,12 @@
         };
 
         var cases = [
-            {x: 100, y: 60, scale: 1, transform: "translate(0px, 10px) scale(1)"},
-            {x: 150, y: 60, scale: 1, transform: "translate(50px, 10px) scale(1)"},
-            {x: 150, y: 60, scale: 2, transform: "translate(-50px, -40px) scale(2)"},
-            {x: 50, y: 20, scale: 2.5, transform: "translate(-200px, -105px) scale(2.5)"},
-            {x: 150, y: 60, scale: 2, transform: "translate(-50px, -40px) scale(2)"},
-            {x: 50, y: 20, scale: 0.25, transform: "translate(25px, 8px) scale(0.25)"}
+            {x: 100, y: 60, scale: 1, transform: [-50, -40, 1]},
+            {x: 150, y: 60, scale: 1, transform: [0, -40, 1]},
+            {x: 150, y: 60, scale: 2, transform: [-150, -140, 2]},
+            {x: 50, y: 20, scale: 2.5, transform: [-325, -230, 2.5]},
+            {x: 150, y: 60, scale: 2, transform: [-150, -140, 2]},
+            {x: 50, y: 20, scale: 0.25, transform: [13, -5, 0.25]}
         ];
         
         var len = cases.length;
@@ -79,6 +79,53 @@
         
     }
 
+    function test_pinchMove_preservecenter(t) {
+
+        var control = new OpenLayers.Control.PinchZoom({
+            preserveCenter: true
+        });
+
+        var map = new OpenLayers.Map({
+            div: "map",
+            controls: [control],
+            layers: [new OpenLayers.Layer('fake', {isBaseLayer: true})]
+        });
+        map.zoomToMaxExtent();
+
+        var centerPx = map.getPixelFromLonLat(map.getCenter());
+
+        control.pinchStart = function(evt, pinchData) {
+            t.eq(map.layerContainerOriginPx, {x: 0, y: 0}, "center preserved");
+            t.eq(map.getPixelFromLonLat(map.getCenter()), centerPx, "center preserved");
+        }
+
+        control.pinchStart(null);
+
+        var log = [];
+        map.applyTransform = function(x, y, scale) {
+            log.push([x, y, scale]);
+        }
+        control.pinchOrigin = map.getPixelFromLonLat(map.getCenter());
+
+        var cases = [
+            {scale: 1, transform: [0, 0, 1]},
+            {scale: 2, transform: [-128, -128, 2]},
+            {scale: 2.5, transform: [-192, -192, 2.5]},
+            {scale: 0.25, transform: [96, 96, 0.25]}
+        ];
+
+        var len = cases.length;
+        t.plan(2 + len*2);
+
+        var c;
+        for (var i=0; i<len; ++i) {
+            c = cases[i];
+            control.pinchMove(null, {scale: c.scale});
+            t.eq(log.length, i+1, i + " called once");
+            t.eq(log[i], c.transform, i + " correct transform");
+        }
+    }
+
   </script>
 </head>
 <body>
diff --git a/tests/Control/SLDSelect.html b/tests/Control/SLDSelect.html
index 7493553..03b871c 100644
--- a/tests/Control/SLDSelect.html
+++ b/tests/Control/SLDSelect.html
@@ -100,6 +100,62 @@
         map.destroy();
     }
 
+    function test_filterModificationOnSelected(t) {
+        t.plan(1);
+        var parser = new OpenLayers.Format.WFSDescribeFeatureType();
+        var map = new OpenLayers.Map('map');
+        var layer = new OpenLayers.Layer.WMS('Foo', 'http://foo', {LAYERS: 'AAA64'});
+        map.addLayer(layer);
+
+        var text =
+            '<?xml version="1.0" encoding="ISO-8859-1" ?>' +
+            '<schema' +
+            '   targetNamespace="http://mapserver.gis.umn.edu/mapserver" ' +
+            '   xmlns:rws="http://mapserver.gis.umn.edu/mapserver" ' +
+            '   xmlns:ogc="http://www.opengis.net/ogc"' +
+            '   xmlns:xsd="http://www.w3.org/2001/XMLSchema"' +
+            '   xmlns="http://www.w3.org/2001/XMLSchema"' +
+            '   xmlns:gml="http://www.opengis.net/gml"' +
+            '   elementFormDefault="qualified" version="0.1" >' +
+            '  <import namespace="http://www.opengis.net/gml"' +
+            '          schemaLocation="http://schemas.opengis.net/gml/2.1.2/feature.xsd" />' +
+            '  <element name="AAA64" ' +
+            '           type="rws:AAA64Type" ' +
+            '           substitutionGroup="gml:_Feature" />' +
+            '  <complexType name="AAA64Type">' +
+            '    <complexContent>' +
+            '      <extension base="gml:AbstractFeatureType">' +
+            '        <sequence>' +
+            '          <element name="geometry" type="gml:MultiLineStringPropertyType" minOccurs="0" maxOccurs="1"/>' +
+            '          <element name="OBJECTID" type="string"/>' +
+            '        </sequence>' +
+            '      </extension>' +
+            '    </complexContent>' +
+            '  </complexType>' +
+            '</schema>';
+
+        OpenLayers.Control.SLDSelect.prototype.wfsCache[layer.id] = parser.read(text);
+        var control = new OpenLayers.Control.SLDSelect(OpenLayers.Handler.RegularPolygon,
+            {layers: [layer], clearOnDeactivate: true, handlerOptions: {irregular: true} });
+
+        var testEvent = function(evt) {
+            // manipulate filter
+            var bbox = OpenLayers.Bounds.fromString('1,2,3,4');
+            evt.filters[0].value = bbox;
+        };
+        control.events.register("selected", this, testEvent);
+        map.addControl(control);
+        var geometry = OpenLayers.Geometry.Polygon.createRegularPolygon(
+            new OpenLayers.Geometry.Point(0, 0), 5, 4);
+        control.select(geometry);
+        control.events.unregister("selected", this, testEvent);
+
+        var expected_sld = '<sld:StyledLayerDescriptor xmlns:sld="http://www.opengis.net/sld" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"><sld:NamedLayer><sld:Name>AAA64</sld:Name><sld:UserStyle><sld:Name>default</sld:Name><sld:FeatureTypeStyle><sld:Rule><ogc:Filter xmlns:ogc= [...]
+
+        t.xml_eq(map.layers[1].params.SLD_BODY, expected_sld, "Filter / SLD manipulated in select-callback correctly");
+
+    }
+
     function test_multiselect(t) {
         t.plan(2);
 
diff --git a/tests/Control/Scale.html b/tests/Control/Scale.html
index 804ceb5..1d43b25 100644
--- a/tests/Control/Scale.html
+++ b/tests/Control/Scale.html
@@ -22,7 +22,7 @@
     
         control = new OpenLayers.Control.Scale('scale');
         t.ok( control instanceof OpenLayers.Control.Scale, "new OpenLayers.Control returns object" );
-        map = new OpenLayers.Map('map');
+        map = new OpenLayers.Map('map', {zoomMethod: null});
         layer = new OpenLayers.Layer.WMS('Test Layer', "http://octo.metacarta.com/cgi-bin/mapserv", {map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'});
         map.addLayer(layer);
         map.zoomTo(0);
@@ -38,7 +38,7 @@
         t.plan(2);
         control = new OpenLayers.Control.Scale();
         t.ok( control instanceof OpenLayers.Control.Scale, "new OpenLayers.Control returns object" );
-        map = new OpenLayers.Map('map');
+        map = new OpenLayers.Map('map', {zoomMethod: null});
         layer = new OpenLayers.Layer.WMS('Test Layer', "http://octo.metacarta.com/cgi-bin/mapserv", {map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'});
         map.addLayer(layer);
         map.zoomTo(0);
diff --git a/tests/Control/SelectFeature.html b/tests/Control/SelectFeature.html
index 68e3031..6e522e7 100644
--- a/tests/Control/SelectFeature.html
+++ b/tests/Control/SelectFeature.html
@@ -545,6 +545,31 @@
         t.eq((control.layers === null), true, "When using setLayer with a single layer, the layers property is removed if present before");
         map.destroy();
     }
+	
+    function test_setLayerWithRemoving(t) {
+        t.plan(2);
+        var map = new OpenLayers.Map("map");
+        var layer1 = new OpenLayers.Layer.Vector();
+        var layer2 = new OpenLayers.Layer.Vector();
+        map.addLayer(layer1, layer2);
+        // initialize it with a single layer
+        var control = new OpenLayers.Control.SelectFeature(layer1);
+        map.addControl(control);
+        control.activate();
+		var noError = null;
+		map.events.register("preremovelayer", this, function(e) {
+			try {
+				control.setLayer(layer2);
+			} catch (e) {
+				noError = e;
+			}
+		});
+		layer1.destroy();
+		t.eq(layer2.id, control.layer.id, "Layer is set correctly without error");
+		t.eq(noError, null,"No error occured during setLayer. Error is: '"+noError+"'");
+        control.destroy();
+        map.destroy();
+    }
 
     function test_destroy(t) {
         t.plan(1);
@@ -558,6 +583,46 @@
         t.eq(layer1.renderer.getRenderLayerId(), layer1.id, 
             "Root container moved correctly when control is destroyed and layers was an array parameter");
     }   
+
+    function test_unselectAll(t) {
+        t.plan(2);
+
+        var layer = new OpenLayers.Layer.Vector();
+
+        var control = new OpenLayers.Control.SelectFeature(layer);
+
+        var feature1 = new OpenLayers.Feature.Vector();
+        feature1.id = 1;
+        var feature2 = new OpenLayers.Feature.Vector();
+        feature2.id = 2;
+        var feature3 = new OpenLayers.Feature.Vector();
+        feature3.id = 3;
+        var feature4 = new OpenLayers.Feature.Vector();
+        feature4.id = 4;
+
+        layer.addFeatures([feature1, feature2, feature3, feature4]);
+
+        control.select(feature1);
+        control.select(feature2);
+        control.select(feature3);
+        control.select(feature4);
+
+        layer.events.on({
+            featureunselected: function(e) {
+                // we change the selectedFeatures array while
+                // unselectAll is iterating over that array.
+                if(feature2.layer) {
+                    layer.removeFeatures([feature2]);
+                }
+            }
+        });
+
+        control.unselectAll({except: feature3});
+        t.eq(layer.selectedFeatures.length, 1,
+             'unselectAll unselected all but one');
+        t.eq(layer.selectedFeatures[0].id, 3,
+             'the remaining selected features is the one expected');
+    }
    
     </script>
 </head>
diff --git a/tests/Control/Split.html b/tests/Control/Split.html
index 86af76c..e3a6eac 100644
--- a/tests/Control/Split.html
+++ b/tests/Control/Split.html
@@ -104,13 +104,18 @@
         
         t.plan(7);
         
-        var layer = new OpenLayers.Layer.Vector("foo", {
+        var layer1 = new OpenLayers.Layer.Vector("foo", {
             maxExtent: new OpenLayers.Bounds(-10, -10, 10, 10),
             isBaseLayer: true
         });
-        var control = new OpenLayers.Control.Split({layer: layer});
+        var layer2 = new OpenLayers.Layer.Vector("bar", {
+            maxExtent: new OpenLayers.Bounds(-10, -10, 10, 10),
+            isBaseLayer: false
+        });
+        var control = new OpenLayers.Control.Split({layer: layer1});
         var map = new OpenLayers.Map("map");
-        map.addLayer(layer);
+        map.addLayer(layer1);
+        map.addLayer(layer2);
         map.zoomToMaxExtent();
         map.addControl(control);
 
@@ -124,17 +129,17 @@
         t.eq(control.handler.active, false, "sketch handler deactivated");
         
         // set a source layer
-        control.setSource(layer);
+        control.setSource(layer2);
 
         // activate and check that listeners are registered
         control.activate();
-        t.ok(layer.events.listeners.sketchcomplete, "sketchcomplete listener registered");
-        t.ok(layer.events.listeners.afterfeaturemodified, "afterfeaturemodified listener registered");
+        t.ok(layer2.events.listeners.sketchcomplete, "sketchcomplete listener registered");
+        t.ok(layer2.events.listeners.afterfeaturemodified, "afterfeaturemodified listener registered");
 
         // deactivate and confirm no draw related events
         control.deactivate();
-        t.eq(layer.events.listeners.sketchcomplete.length, 0, "no sketchcomplete listeners");
-        t.eq(layer.events.listeners.afterfeaturemodified.length, 0, "no afterfeaturemodified listeners");
+        t.eq(layer2.events.listeners.sketchcomplete.length, 0, "no sketchcomplete listeners");
+        t.eq(layer2.events.listeners.afterfeaturemodified.length, 0, "no afterfeaturemodified listeners");
         
         map.destroy();
     }
diff --git a/tests/Control/TouchNavigation.html b/tests/Control/TouchNavigation.html
index 21241dd..bffc225 100644
--- a/tests/Control/TouchNavigation.html
+++ b/tests/Control/TouchNavigation.html
@@ -128,27 +128,28 @@
     function test_zoomOut(t) {
         t.plan(1);
 
-        var map = new OpenLayers.Map(document.body);
+        var map = new OpenLayers.Map('map', {zoomMethod: null});
         var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
                     "http://labs.metacarta.com/wms/vmap0",
                     {layers: 'basic'} );
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0, 0), 5);
+        var origSetTimeout = window.setTimeout;
+        window.setTimeout = function(fn) { fn(); return 'id'; };
         var control = new OpenLayers.Control.TouchNavigation();
         map.addControl(control);
         var handler = control.handlers.click;
         handler.touchstart({xy: new OpenLayers.Pixel(1 ,1), touches: ["foo", "bar"]});
         handler.touchend({});
-        t.delay_call(1, function() {
-            t.eq(map.getZoom(), 4, "Did we zoom out?");
-            // tear down
-            map.destroy();
-        });
-
+        t.eq(map.getZoom(), 4, "Did we zoom out?");
+        // tear down
+        map.destroy();
+        window.setTimeout = origSetTimeout;
     }
 
   </script>
 </head>
 <body>
+    <div id="map" style="width:512px;height:256px"></div>
 </body>
 </html>
diff --git a/tests/Control/UTFGrid.html b/tests/Control/UTFGrid.html
index 36d79bb..74b4b99 100644
--- a/tests/Control/UTFGrid.html
+++ b/tests/Control/UTFGrid.html
@@ -30,6 +30,7 @@
         });
         map = new OpenLayers.Map({
             div: "map",
+            tileManager: null,
             projection: "EPSG:900913",
             layers: [layer],
             center: [0, 0],
diff --git a/tests/Control/Zoom.html b/tests/Control/Zoom.html
index c27161d..cfeb082 100644
--- a/tests/Control/Zoom.html
+++ b/tests/Control/Zoom.html
@@ -43,7 +43,8 @@
         
         var map = new OpenLayers.Map({
             div: "map",
-            layers: [new OpenLayers.Layer(null, {isBaseLayer: true})]
+            layers: [new OpenLayers.Layer(null, {isBaseLayer: true})],
+            zoomMethod: null
         });
         var control = new OpenLayers.Control.Zoom();
         map.addControl(control);
@@ -60,7 +61,8 @@
         
         var map = new OpenLayers.Map({
             div: "map",
-            layers: [new OpenLayers.Layer(null, {isBaseLayer: true})]
+            layers: [new OpenLayers.Layer(null, {isBaseLayer: true})],
+            zoomMethod: null
         });
         var control = new OpenLayers.Control.Zoom();
         map.addControl(control);
diff --git a/tests/Control/ZoomBox.html b/tests/Control/ZoomBox.html
new file mode 100644
index 0000000..7763bcf
--- /dev/null
+++ b/tests/Control/ZoomBox.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <script src="../OLLoader.js"></script>
+  <script type="text/javascript">
+
+    function test_constructor(t) {
+        t.plan(4);
+
+        var control = new OpenLayers.Control.ZoomBox();
+        t.ok(control instanceof OpenLayers.Control, "instance of Control");
+        t.ok(control instanceof OpenLayers.Control.ZoomBox, "instance of ZoomBox");
+        t.eq(control.displayClass, "olControlZoomBox", "displayClass");
+        control.destroy();
+        
+        control = new OpenLayers.Control.ZoomBox({
+            zoomOnClick: false
+        });
+        t.eq(control.zoomOnClick, false, "zoomOnClick");
+        control.destroy();        
+    }
+
+    function test_zoomBox(t) {
+        t.plan(4);
+        var map = new OpenLayers.Map("map", {
+            zoomMethod: null,
+            layers: [new OpenLayers.Layer("", {isBaseLayer: true})],
+            center: [0, 0],
+            zoom: 1
+        });
+        var control = new OpenLayers.Control.ZoomBox();
+        map.addControl(control);
+        control.zoomBox(new OpenLayers.Pixel(50, 60));
+        t.eq(map.getZoom(), 2, "zoomed on click");
+        
+        control.zoomOnClick = false;
+        control.zoomBox(new OpenLayers.Pixel(-50, -60));
+        t.eq(map.getZoom(), 2, "not zoomed with zoomOnClick set to false");
+        
+        map.zoomToMaxExtent();
+        // pixel bounds bottom > top
+        control.zoomBox(new OpenLayers.Bounds(128, 128, 256, 64));
+        t.eq(map.getCenter().toShortString(), "-45, 22.5", "centered to box center");
+        t.eq(map.getZoom(), 3, "zoomed to box extent");
+        
+        map.destroy();
+    }
+
+  </script>
+</head>
+<body>
+    <div id="map" style="width: 512px; height: 256px;"/>
+</body>
+</html>
diff --git a/tests/Control/ZoomIn.html b/tests/Control/ZoomIn.html
new file mode 100644
index 0000000..844ded5
--- /dev/null
+++ b/tests/Control/ZoomIn.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <script src="../OLLoader.js"></script>
+        <script type="text/javascript">
+        
+function test_ZoomIn_constructor (t) {
+    t.plan( 2 );
+    
+    // setup
+    var control = new OpenLayers.Control.ZoomIn();
+    
+    // tests
+    //
+    t.ok( 
+        control instanceof OpenLayers.Control.ZoomIn, 
+        "new OpenLayers.Control.ZoomIn returns object"
+    );
+    t.eq( 
+        control.displayClass, "olControlZoomIn", 
+        "displayClass is correct"
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_ZoomIn_type (t) {
+    t.plan( 1 );
+    
+    // setup
+    var control = new OpenLayers.Control.ZoomIn();
+    
+    // tests
+    //
+    t.eq( 
+        control.type, 
+        OpenLayers.Control.TYPE_BUTTON,
+        "ZoomIn control is of type OpenLayers.Control.TYPE_BUTTON"
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_ZoomIn_trigger (t) {
+    t.plan( 2 );
+    
+    // set up
+    var control = new OpenLayers.Control.ZoomIn(),
+        zoomlevel = 5,
+        map = new OpenLayers.Map("map", {
+            allOverlays: true,
+            layers: [
+                new OpenLayers.Layer.Vector()
+            ],
+            center: new OpenLayers.LonLat(1,1),
+            zoom: zoomlevel
+        }),
+        oldZoom;
+    
+    oldZoom = map.getZoom();
+    
+    // tests
+    //
+    // trigger the control before it is being added,
+    // nothing should change
+    control.trigger();
+    
+    t.eq(
+        oldZoom, 
+        zoomlevel,
+        'Calling trigger on a non added control doesn\'t do anything ' +
+            '(map zoom is ' + oldZoom + ').'
+    );
+            
+    // now lets add the control
+    map.addControl(control);
+
+    // trigger it again, now the map should have a different extent
+    control.trigger();
+    
+    t.eq(
+        map.getZoom(),
+        zoomlevel + 1,
+        'Calling trigger on a added control changes the map zoom ' +
+            '(map zoom was ' + zoomlevel + 
+            ' and is now ' + map.getZoom() + ').'
+    );
+    
+    // tear down
+    control.destroy();
+    map.destroy();
+}
+    
+        </script>
+    </head>
+    <body>
+        <div id="map" style="width: 1000px; height: 1000px;"></div>
+    </body>
+</html>
diff --git a/tests/Control/ZoomOut.html b/tests/Control/ZoomOut.html
new file mode 100644
index 0000000..5345c55
--- /dev/null
+++ b/tests/Control/ZoomOut.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <script src="../OLLoader.js"></script>
+        <script type="text/javascript">
+        
+function test_ZoomOut_constructor (t) {
+    t.plan( 2 );
+    
+    // setup
+    var control = new OpenLayers.Control.ZoomOut();
+    
+    // tests
+    //
+    t.ok( 
+        control instanceof OpenLayers.Control.ZoomOut, 
+        "new OpenLayers.Control.ZoomOut returns object"
+    );
+    t.eq( 
+        control.displayClass, "olControlZoomOut", 
+        "displayClass is correct"
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_ZoomOut_type(t){
+    t.plan( 1 );
+    
+    // setup
+    var control = new OpenLayers.Control.ZoomOut();
+    
+    // check that the type of the control equals OpenLayers.Control.TYPE_BUTTON
+    t.eq(
+        control.type,
+        OpenLayers.Control.TYPE_BUTTON,
+        'ZoomOut-control is of type "OpenLayers.Control.TYPE_BUTTON".'
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_ZoomOut_trigger (t) {
+    t.plan( 2 );
+    
+    // set up
+    var control = new OpenLayers.Control.ZoomOut(),
+        zoomlevel = 5,
+        map = new OpenLayers.Map("map", {
+            allOverlays: true,
+            layers: [
+                new OpenLayers.Layer.Vector()
+            ],
+            center: new OpenLayers.LonLat(1,1),
+            zoom: zoomlevel
+        }),
+        oldZoom;
+    
+    oldZoom = map.getZoom();
+    
+    // tests
+    //
+    // trigger the control before it is being added,
+    // nothing should change
+    control.trigger();
+    
+    t.eq(
+        oldZoom, 
+        zoomlevel,
+        'Calling trigger on a non added control doesn\'t do anything ' +
+            '(map zoom is ' + oldZoom + ').'
+    );
+            
+    // now lets add the control
+    map.addControl(control);
+
+    // trigger it again, now the map should have a different extent
+    control.trigger();
+    
+    t.eq(
+        map.getZoom(),
+        zoomlevel - 1,
+        'Calling trigger on a added control changes the map zoom ' +
+            '(map zoom was ' + zoomlevel + 
+            ' and is now ' + map.getZoom() + ').'
+    );
+    
+    // tear down
+    control.destroy();
+    map.destroy();
+}
+    
+        </script>
+    </head>
+    <body>
+        <div id="map" style="width: 1000px; height: 1000px;"></div>
+    </body>
+</html>
diff --git a/tests/Control/ZoomToMaxExtent.html b/tests/Control/ZoomToMaxExtent.html
new file mode 100644
index 0000000..8ed5512
--- /dev/null
+++ b/tests/Control/ZoomToMaxExtent.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <script src="../OLLoader.js"></script>
+        <script type="text/javascript">
+        
+function test_ZoomToMaxExtent_constructor (t) {
+    t.plan( 2 );
+    
+    // setup
+    var control = new OpenLayers.Control.ZoomToMaxExtent();
+    
+    // tests
+    //
+    t.ok( 
+        control instanceof OpenLayers.Control.ZoomToMaxExtent, 
+        "new OpenLayers.Control.ZoomToMaxExtent returns object"
+    );
+    t.eq( 
+        control.displayClass, "olControlZoomToMaxExtent", 
+        "displayClass is correct"
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_ZoomToMaxExtent_type (t) {
+    t.plan( 1 );
+    
+    // setup
+    var control = new OpenLayers.Control.ZoomToMaxExtent();
+    
+    // check that the type of the control equals OpenLayers.Control.TYPE_BUTTON
+    t.eq(
+        control.type,
+        OpenLayers.Control.TYPE_BUTTON,
+        'ZoomToMaxExtent-control is of type "OpenLayers.Control.TYPE_BUTTON".'
+    );
+    
+    // tear down
+    control.destroy();
+}
+
+function test_ZoomToMaxExtent_trigger (t) {
+    t.plan( 2 );
+    
+    // set up
+    var mapsMaxExtent = new OpenLayers.Bounds(0, 0, 45, 45),
+        mapsInitialExtent = new OpenLayers.Bounds(5, 5, 7, 7),
+        control = new OpenLayers.Control.ZoomToMaxExtent(),
+        map = new OpenLayers.Map("map", {
+            maxExtent: mapsMaxExtent,
+            allOverlays: true,
+            fractionalZoom: true,
+            layers: [
+                new OpenLayers.Layer.Vector()
+            ]
+        }),
+        oldExtent;
+    
+    map.zoomToExtent(mapsInitialExtent);
+    
+    oldExtent = map.getExtent().toString();
+    
+    // tests
+    //
+    // trigger the control before it is being added,
+    // nothing should change
+    control.trigger();
+    t.eq(
+        oldExtent, 
+        map.getExtent().toString(),
+        'Calling trigger on a non added control doesn\'t do anything ' +
+            '(map extent is "' + oldExtent + '").'
+    );
+            
+    // now lets add the control
+    map. addControl(control);
+    
+    // trigger it again, now the map should have a different extent
+    control.trigger();
+    
+    t.eq(
+        map.getExtent().toString(),
+        mapsMaxExtent.toString(),
+        'Calling trigger on a added control changes the map extent ' +
+            '(map extent was "' + oldExtent + '"' + 
+            ' and is now "' + mapsMaxExtent.toString() + '").'
+    );
+    
+    // tear down
+    control.destroy();
+    map.destroy();
+}
+    
+        </script>
+    </head>
+    <body>
+        <div id="map" style="width: 1000px; height: 1000px;"></div>
+    </body>
+</html>
diff --git a/tests/Events.html b/tests/Events.html
index eebda24..03c540c 100644
--- a/tests/Events.html
+++ b/tests/Events.html
@@ -300,7 +300,7 @@
     }
 
     function test_Events_handleBrowserEvent(t) {
-        t.plan(2);
+        t.plan(8);
         var events = new OpenLayers.Events({}, null);
         events.on({'sometouchevent': function() {}});
 
@@ -312,6 +312,57 @@
         events.handleBrowserEvent(evt);
         t.eq(evt.clientX, 1.5, "evt.clientX value is correct");
         t.eq(evt.clientY, 1.5, "evt.clientY value is correct");
+        
+        // test bug where clientX/clientY includes scroll offset
+        window.olMockWin = {
+            pageXOffset: 10,
+            pageYOffset: 20
+        };
+        evt = {type: 'sometouchevent',
+               touches: [{
+                   clientX: 11,
+                   clientY: 21,
+                   pageX: 0,
+                   pageY: 0
+               }]
+              };
+        events.handleBrowserEvent(evt);
+        t.eq(evt.clientX, 1, "evt.clientX value is correct");
+        t.eq(evt.clientY, 1, "evt.clientY value is correct");
+        
+        
+        // test bug where clientX/clientY have negative values
+        evt = {
+            type: 'sometouchevent',
+            touches: [{
+                clientX: -412,
+                clientY: -1005,
+                pageX: 11,
+                pageY: 21
+            }]
+        };
+        events.handleBrowserEvent(evt);
+        t.eq(evt.clientX, 1, "evt.clientX value is correct");
+        t.eq(evt.clientY, 1, "evt.clientY value is correct");
+        
+        window.olMockWin = {
+            pageXOffset: 11,
+            pageYOffset: 299
+        };
+        evt = {
+            type: 'sometouchevent',
+                touches: [{
+                clientX: 223,
+                clientY: 119,
+                pageX: 242,
+                pageY: 623
+            }]
+        };
+        events.handleBrowserEvent(evt);
+        t.eq(evt.clientX, 231, "evt.clientX value is correct");
+        t.eq(evt.clientY, 324, "evt.clientY value is correct");
+        
+        window.olMockWin = undefined;
     }
     
     function test_Events_attachToElement(t) {
diff --git a/tests/Events/buttonclick.html b/tests/Events/buttonclick.html
index 35ebb81..dadbd3a 100644
--- a/tests/Events/buttonclick.html
+++ b/tests/Events/buttonclick.html
@@ -63,6 +63,40 @@
         events.destroy();
     }
     
+    function test_ignore(t) {
+        t.plan(5);
+
+        // set up
+
+        events = new OpenLayers.Events({}, element);
+        buttonClick = new OpenLayers.Events.buttonclick(events);
+
+        var link = document.createElement('a'),
+            span1 = document.createElement('span'),
+            span2 = document.createElement('span'),
+            span3 = document.createElement('span');
+        link.appendChild(span1);
+        span1.appendChild(span2);
+        span2.appendChild(span3);
+
+        t.eq(buttonClick.ignore(link), true,
+             'ignore returns true when element is a link');
+        t.eq(buttonClick.ignore(span1), true,
+             'ignore returns true when element is link descendant level 1');
+        t.eq(buttonClick.ignore(span2), true,
+             'ignore returns true when element is link descendant level 2');
+        t.eq(buttonClick.ignore(span3), false,
+             'ignore returns false when element is link descendant level 3');
+        t.eq(buttonClick.ignore(element), false,
+             'ignore returns false when element is not a link');
+
+
+        // tear down
+
+        buttonClick.destroy();
+        events.destroy();
+    }
+    
     function test_ButtonClick_buttonClick(t) {
         t.plan(27);
         events = new OpenLayers.Events({}, element);
diff --git a/tests/Events/featureclick.html b/tests/Events/featureclick.html
new file mode 100644
index 0000000..ae111b7
--- /dev/null
+++ b/tests/Events/featureclick.html
@@ -0,0 +1,91 @@
+<html>
+<head>
+<script src="../OLLoader.js"></script>
+<script type="text/javascript">
+
+var layer1, style, logevt, lognoevt, map, lonlat, pixel, element;
+
+function init() {
+
+	element = document.getElementById("map");
+
+	style = new OpenLayers.StyleMap({
+		 'default': OpenLayers.Util.applyDefaults(
+		     {label: "${l}", pointRadius: 30},
+		     OpenLayers.Feature.Vector.style["default"]
+		 ),
+		 'select': OpenLayers.Util.applyDefaults(
+		     {pointRadius: 30},
+		     OpenLayers.Feature.Vector.style.select
+		 )
+	});
+	
+	layer1 = new OpenLayers.Layer.Vector("Layer 1", {
+		styleMap: style
+	});
+
+	layer1.addFeatures([
+		 new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(0 0)"), {l:1}),
+		 new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(0 0)"), {l:1}),
+		 new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(0 0)"), {l:1}),
+		 new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT("POINT(0 0)"), {l:1})
+	]);
+
+	map = new OpenLayers.Map({
+		div: "map",
+		allOverlays: true,
+		layers: [layer1],
+		zoom: 6,
+		center: [0, 0],
+		eventListeners: {
+            featureclick: logEvent,
+            nofeatureclick: logNoEvent
+		}
+	});	
+}
+
+function logNoEvent(e) {
+	lognoevt.push(e);
+}
+
+function logEvent(e) {
+	logevt.push(e);	
+}
+
+function trigger(type, pxl) {
+	var map_position = OpenLayers.Util.pagePosition(element);
+	map.events.triggerEvent(type, {
+		xy: pxl, 
+		clientX: pxl.x + map_position[0], 
+		clientY: pxl.y + map_position[1], 
+		which: 1  // which == 1 means left-click
+	}); 	
+}
+
+// TESTS
+
+function test_onClick(t) {
+	t.plan(2);
+	logevt = [];
+	lognoevt = [];
+	lonlat = new OpenLayers.LonLat(0,0);
+	pixel = map.getPixelFromLonLat(lonlat);
+
+	trigger('mousedown', pixel);
+	trigger('mouseup', pixel);
+	
+	t.eq(logevt.length, 4, "4 features hit");
+    
+    trigger('mousedown', {x: 40, y: 40});
+    trigger('mouseup', {x: 40, y: 40});
+	t.eq(lognoevt.length, 1, "nofeatureclick fired for click outside features.");
+}
+
+// END TESTS
+
+</script>
+</head>
+<body onload="init()">
+<div id="map" style="width: 300px; height: 150px; border: 1px solid black"></div>
+</body>
+</html>
diff --git a/tests/Feature.html b/tests/Feature.html
index 4a50d51..aa3db24 100644
--- a/tests/Feature.html
+++ b/tests/Feature.html
@@ -21,7 +21,7 @@
 
         t.ok( feature instanceof OpenLayers.Feature, "new OpenLayers.Feature returns Feature object" );
         t.eq( feature.layer, layer, "feature.layer set correctly" );
-        t.ok(OpenLayers.String.startsWith(feature.id, "OpenLayers.Feature_"),
+        t.ok(OpenLayers.String.startsWith(feature.id, "OpenLayers_Feature_"),
              "feature.id set correctly");
         t.ok( feature.lonlat.equals(lonlat), "feature.lonlat set correctly" );
         t.eq( feature.data.iconURL, iconURL, "feature.data.iconURL set correctly" );
diff --git a/tests/Filter/Comparison.html b/tests/Filter/Comparison.html
index a0c2da3..04e192a 100644
--- a/tests/Filter/Comparison.html
+++ b/tests/Filter/Comparison.html
@@ -164,6 +164,34 @@
             }),
             context: {prop: "FOO"},
             expect: false
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: {prop: null},
+            expect: true
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: {},
+            expect: false
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: {prop: "foo"},
+            expect: false
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: {prop: 0},
+            expect: false
         }];
         
         t.plan(cases.length);
@@ -274,6 +302,34 @@
             }),
             context: new OpenLayers.Feature.Vector(null, {prop: "FOO"}),
             expect: false
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: new OpenLayers.Feature.Vector(null, {prop: null}),
+            expect: true
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: new OpenLayers.Feature.Vector(null, {}),
+            expect: false
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: new OpenLayers.Feature.Vector(null, {prop: "foo"}),
+            expect: false
+        }, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.IS_NULL,
+                property: "prop"
+            }),
+            context: new OpenLayers.Feature.Vector(null, {prop: 0}),
+            expect: false
         }];
         
         t.plan(cases.length);
diff --git a/tests/Format/CQL.html b/tests/Format/CQL.html
index a1c65ee..7b31eab 100644
--- a/tests/Format/CQL.html
+++ b/tests/Format/CQL.html
@@ -35,6 +35,69 @@ function test_Comparison_string(t) {
     t.eq(format.write(filter), test_cql, "write returned test cql");
 }
 
+function test_read_whitespace(t) {
+    t.plan(4);
+    var cql = "TYPEDESC = 'BOE Numbered Plans'";
+    var format = new OpenLayers.Format.CQL();
+    var filter = format.read(cql);
+    t.ok(filter instanceof OpenLayers.Filter.Comparison, "filter parsed correctly with whitespace in string");
+    t.eq(filter.property, 'TYPEDESC', "filter property parsed correctly");
+    t.eq(filter.value, 'BOE Numbered Plans', "value parsed correctly");
+    t.eq(filter.type, '==', 'filter type parsed correctly');
+}
+
+function test_read_escaped_quotes(t) {
+    t.plan(14);
+    var cql = "PROP = 'don''t worry' or PROP = 'value''s value' or PROP = 'foo'";
+    var format = new OpenLayers.Format.CQL();
+
+    var filter = format.read(cql);
+    t.ok(filter instanceof OpenLayers.Filter.Logical, "filter type");
+    t.eq(filter.filters.length, 2, "filter children");
+
+    var f0 = filter.filters[0];
+    t.ok(f0 instanceof OpenLayers.Filter.Logical, "f0 type");
+    t.eq(f0.filters.length, 2, "f0 children");
+
+    var f00 = f0.filters[0];
+    t.eq(f00.property, "PROP", "f000 property");
+    t.eq(f00.type, "==", "f000 type");
+    t.eq(f00.value, "don't worry", "f000 value");
+
+    var f01 = f0.filters[1];
+    t.eq(f01.property, "PROP", "f001 property");
+    t.eq(f01.type, "==", "f001 type");
+    t.eq(f01.value, "value's value", "f001 value");
+
+    var f1 = filter.filters[1];
+    t.ok(f1 instanceof OpenLayers.Filter.Comparison, "f1 type");
+    t.eq(f1.property, "PROP", "f1 property");
+    t.eq(f1.type, "==", "f1 type");
+    t.eq(f1.value, "foo", "f1 value");
+}
+
+function test_write_escaped_quotes(t) {
+    t.plan(1);
+    var filter = new OpenLayers.Filter.Logical({
+        type: OpenLayers.Filter.Logical.OR,
+        filters: [
+            new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.EQUAL_TO,
+                property: "PROP",
+                value: "quot'd string"
+            }),
+            new OpenLayers.Filter.Comparison({
+                type: OpenLayers.Filter.Comparison.EQUAL_TO,
+                property: "PROP",
+                value: "don't quote's"
+            })
+        ]
+    });
+    var format = new OpenLayers.Format.CQL();
+    var cql = format.write(filter);
+    t.eq(cql, "(PROP = 'quot''d string') OR (PROP = 'don''t quote''s')", "escaped");
+}
+
 function test_Comparison_number(t) {
     t.plan(5);
     var test_cql, format, filter;
@@ -281,6 +344,20 @@ function test_BETWEEN(t) {
 
 }
 
+function test_NULL(t) {
+    t.plan(3);
+    var filter = new OpenLayers.Filter.Comparison({
+        property: "GEOM",
+        type: "NULL"
+    });
+    var format = new OpenLayers.Format.CQL();
+    var str = 'GEOM IS NULL';
+    t.eq(format.write(filter), str, "NULL filter written correctly");
+    filter = format.read(str);
+    t.eq(filter.type, OpenLayers.Filter.Comparison.IS_NULL, "filter type is correctly parsed");
+    t.eq(filter.property, "GEOM", "filter property is correctly parsed");
+}
+
         </script>
     </head>
     <body></body>
diff --git a/tests/Format/EncodedPolyline.html b/tests/Format/EncodedPolyline.html
new file mode 100644
index 0000000..1466347
--- /dev/null
+++ b/tests/Format/EncodedPolyline.html
@@ -0,0 +1,372 @@
+<html>
+<head>
+    <script src="../OLLoader.js"></script>
+    <script type="text/javascript">
+
+    var flatPoints;
+    var floats, smallFloats, encodedFloats;
+    var signedIntegers, encodedSignedIntegers;
+    var unsignedIntegers, encodedUnsignedIntegers;
+
+    function resetTestingData() {
+        flatPoints = [38.50000, -120.20000,
+                      40.70000, -120.95000,
+                      43.25200, -126.45300];
+
+        floats = [0.00, 0.15, -0.01, -0.16, 0.16, 0.01];
+        smallFloats = [0.00000, 0.00015, -0.00001, -0.00016, 0.00016, 0.00001];
+        encodedFloats = '?]@^_ at A';
+
+        signedIntegers = [0, 15, -1, -16, 16, 1];
+        encodedSignedIntegers = '?]@^_ at A';
+
+        unsignedIntegers = [0, 30, 1, 31, 32, 2, 174];
+        encodedUnsignedIntegers = '?]@^_ at AmD';
+    }
+
+    var basePoints = new Array(
+        new Array(3850000, -12020000),
+        new Array(4070000, -12095000),
+        new Array(4325200, -12645300)
+    );
+
+    var points = [
+        new OpenLayers.Geometry.Point(-120.200, 38.500),
+        new OpenLayers.Geometry.Point(-120.950, 40.700),
+        new OpenLayers.Geometry.Point(-126.453, 43.252)
+    ];
+
+    var singlePoint = new OpenLayers.Feature.Vector(points[0]);
+
+    var linestring = new OpenLayers.Feature.Vector(
+        new OpenLayers.Geometry.LineString(points)
+    );
+
+    var multipoint = new OpenLayers.Feature.Vector(
+        new OpenLayers.Geometry.MultiPoint(points)
+    );
+
+    var linearring = new OpenLayers.Feature.Vector(
+        new OpenLayers.Geometry.LinearRing(points)
+    );
+
+    var polygon = new OpenLayers.Feature.Vector(
+        new OpenLayers.Geometry.Polygon([
+            new OpenLayers.Geometry.LinearRing(points)
+        ])
+    );
+
+    var encoded = "_p~iF~ps|U_ulLnnqC_mqNvxq`@";
+
+    function test_Format_EncodedPolyline_constructor(t) {
+        t.plan(4);
+
+        var options = {'foo': 'bar'};
+        var format = new OpenLayers.Format.EncodedPolyline(options);
+        t.ok(format instanceof OpenLayers.Format.EncodedPolyline,
+             "new OpenLayers.Format.EncodedPolyline returns object" );
+        t.eq(format.foo, "bar", "constructor sets options correctly");
+        t.eq(typeof format.read, "function", "format has a read function");
+        t.eq(typeof format.write, "function", "format has a write function");
+    }
+
+    function test_Format_EncodedPolyline_read(t) {
+        t.plan(5);
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.ok(linestring.geometry.equals(format.read(encoded).geometry),
+             "format correctly reads encoded polyline");
+
+        format = new OpenLayers.Format.EncodedPolyline({
+            geometryType: "multipoint"
+        });
+        t.ok(multipoint.geometry.equals(format.read(encoded).geometry),
+             "format correctly reads encoded multipoint");
+
+        format.geometryType = "linearring";
+        t.ok(linearring.geometry.equals(format.read(encoded).geometry),
+             "format correctly reads encoded linearring");
+
+        format.geometryType = "polygon";
+        t.ok(polygon.geometry.equals(format.read(encoded).geometry),
+             "format correctly reads encoded polygon");
+
+        format.geometryType = "point";
+        t.ok(points[0].equals(format.read(encoded).geometry),
+             "format correctly reads encoded point");
+    }
+
+    function test_Format_EncodedPolyline_decode(t) {
+        t.plan(6);
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        var decodedPoints = format.decode(encoded, 2);
+        for (i in decodedPoints) {
+            var point = basePoints[i];
+            var decodedPoint = decodedPoints[i];
+            t.eq(parseInt(decodedPoint[0] * 1e5), point[0]);
+            t.eq(parseInt(decodedPoint[1] * 1e5), point[1]);
+        }
+    }
+
+    function test_Format_EncodedPolyline_write(t) {
+        t.plan(5);
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.write(linestring), encoded,
+             "format correctly writes encoded polyline");
+
+        t.eq(format.write(multipoint), encoded,
+             "format correctly writes encoded multipoint");
+
+        // Different output than encoded,
+        // because polygon closing point is included
+        t.eq(format.write(linearring),
+             "_p~iF~ps|U_ulLnnqC_mqNvxq`@~b_\\ghde@",
+             "format correctly writes encoded linearring");
+
+        t.eq(format.write(polygon),
+             "_p~iF~ps|U_ulLnnqC_mqNvxq`@~b_\\ghde@",
+             "format correctly writes encoded polygon");
+
+        t.eq(format.write(singlePoint), "_p~iF~ps|U",
+             "format correctly writes encoded point");
+    }
+
+    function test_Format_EncodedPolyline_encode(t) {
+        t.plan(1);
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encode(basePoints, 2, 1), encoded);
+    }
+
+    function test_encodeDeltas_returns_expected_value(t) {
+        t.plan(1);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeDeltas(flatPoints, 2), encoded);
+    }
+
+    function test_decodeDeltas_returns_expected_value(t) {
+        t.plan(1);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeDeltas(encoded, 2), flatPoints);
+    }
+
+
+
+    function test_encodeFloats_returns_expected_value(t) {
+        t.plan(3);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeFloats(smallFloats), encodedFloats);
+
+        resetTestingData();
+        t.eq(format.encodeFloats(smallFloats, 1e5), encodedFloats);
+
+        t.eq(format.encodeFloats(floats, 1e2), encodedFloats);
+    }
+
+    function test_decodeFloats_returns_expected_value(t) {
+        t.plan(3);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeFloats(encodedFloats), smallFloats);
+        t.eq(format.decodeFloats(encodedFloats, 1e5), smallFloats);
+        t.eq(format.decodeFloats(encodedFloats, 1e2), floats);
+    }
+
+
+
+    function test_encodeSignedIntegers_returns_expected_value(t) {
+        t.plan(1);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeSignedIntegers(
+            signedIntegers), encodedSignedIntegers);
+    }
+
+    function test_decodeSignedIntegers_returns_expected_value(t) {
+        t.plan(1);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeSignedIntegers(
+            encodedSignedIntegers), signedIntegers);
+    }
+
+
+
+    function test_encodeUnsignedIntegers_returns_expected_value(t) {
+        t.plan(1);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeUnsignedIntegers(
+            unsignedIntegers), encodedUnsignedIntegers);
+    }
+
+    function test_decodeUnsignedIntegers_returns_expected_value(t) {
+        t.plan(1);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeUnsignedIntegers(
+          encodedUnsignedIntegers), unsignedIntegers);
+    }
+
+
+
+    function test_encodeFloat_returns_expected_value(t) {
+        t.plan(12);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeFloat(0.00000), '?');
+        t.eq(format.encodeFloat(-0.00001), '@');
+        t.eq(format.encodeFloat(0.00001), 'A');
+        t.eq(format.encodeFloat(-0.00002), 'B');
+        t.eq(format.encodeFloat(0.00002), 'C');
+        t.eq(format.encodeFloat(0.00015), ']');
+        t.eq(format.encodeFloat(-0.00016), '^');
+
+        t.eq(format.encodeFloat(-0.1, 10), '@');
+        t.eq(format.encodeFloat(0.1, 10), 'A');
+
+        t.eq(format.encodeFloat(16 * 32 / 1e5), '__@');
+        t.eq(format.encodeFloat(16 * 32 * 32 / 1e5), '___@');
+
+        // from the "Encoded Polyline Algorithm Format" page at Google
+        t.eq(format.encodeFloat(-179.9832104), '`~oia@');
+    }
+
+    function test_decodeFloat_returns_expected_value(t) {
+        t.plan(12);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeFloat('?'), 0.00000);
+        t.eq(format.decodeFloat('@'), -0.00001);
+        t.eq(format.decodeFloat('A'), 0.00001);
+        t.eq(format.decodeFloat('B'), -0.00002);
+        t.eq(format.decodeFloat('C'), 0.00002);
+        t.eq(format.decodeFloat(']'), 0.00015);
+        t.eq(format.decodeFloat('^'), -0.00016);
+
+        t.eq(format.decodeFloat('@', 10), -0.1);
+        t.eq(format.decodeFloat('A', 10), 0.1);
+
+        t.eq(format.decodeFloat('__@'), 16 * 32 / 1e5);
+        t.eq(format.decodeFloat('___@'), 16 * 32 * 32 / 1e5);
+
+        // from the "Encoded Polyline Algorithm Format" page at Google
+        t.eq(format.decodeFloat('`~oia@'), -179.98321);
+    }
+
+
+
+    function test_encodeSignedInteger_returns_expected_value(t) {
+        t.plan(10);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeSignedInteger(0), '?');
+        t.eq(format.encodeSignedInteger(-1), '@');
+        t.eq(format.encodeSignedInteger(1), 'A');
+        t.eq(format.encodeSignedInteger(-2), 'B');
+        t.eq(format.encodeSignedInteger(2), 'C');
+        t.eq(format.encodeSignedInteger(15), ']');
+        t.eq(format.encodeSignedInteger(-16), '^');
+
+        t.eq(format.encodeSignedInteger(16), '_@');
+        t.eq(format.encodeSignedInteger(16 * 32), '__@');
+        t.eq(format.encodeSignedInteger(16 * 32 * 32), '___@');
+    }
+
+    function test_decodeSignedInteger_returns_expected_value(t) {
+        t.plan(10);
+        resetTestingData();
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeSignedInteger('?'), 0);
+        t.eq(format.decodeSignedInteger('@'), -1);
+        t.eq(format.decodeSignedInteger('A'), 1);
+        t.eq(format.decodeSignedInteger('B'), -2);
+        t.eq(format.decodeSignedInteger('C'), 2);
+        t.eq(format.decodeSignedInteger(']'), 15);
+        t.eq(format.decodeSignedInteger('^'), -16);
+
+        t.eq(format.decodeSignedInteger('__@'), 16 * 32);
+        t.eq(format.decodeSignedInteger('___@'), 16 * 32 * 32);
+        t.eq(format.decodeSignedInteger('_@'), 16);
+    }
+
+
+
+    function test_encodeUnsignedInteger_returns_expected_value(t) {
+        t.plan(10);
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.encodeUnsignedInteger(0), '?');
+        t.eq(format.encodeUnsignedInteger(1), '@');
+        t.eq(format.encodeUnsignedInteger(2), 'A');
+        t.eq(format.encodeUnsignedInteger(30), ']');
+        t.eq(format.encodeUnsignedInteger(31), '^');
+        t.eq(format.encodeUnsignedInteger(32), '_@');
+
+        t.eq(format.encodeUnsignedInteger(32 * 32), '__@');
+        t.eq(format.encodeUnsignedInteger(5 * 32 * 32), '__D');
+        t.eq(format.encodeUnsignedInteger(32 * 32 * 32), '___@');
+
+        // from the "Encoded Polyline Algorithm Format" page at Google
+        t.eq(format.encodeUnsignedInteger(174), 'mD');
+    }
+
+    function test_decodeUnsignedInteger_returns_expected_value(t) {
+        t.plan(10);
+
+        var format = new OpenLayers.Format.EncodedPolyline();
+
+        t.eq(format.decodeUnsignedInteger('?'), 0);
+        t.eq(format.decodeUnsignedInteger('@'), 1);
+        t.eq(format.decodeUnsignedInteger('A'), 2);
+        t.eq(format.decodeUnsignedInteger(']'), 30);
+        t.eq(format.decodeUnsignedInteger('^'), 31);
+        t.eq(format.decodeUnsignedInteger('_@'), 32);
+
+        t.eq(format.decodeUnsignedInteger('__@'), 32 * 32);
+        t.eq(format.decodeUnsignedInteger('__D'), 5 * 32 * 32);
+        t.eq(format.decodeUnsignedInteger('___@'), 32 * 32 * 32);
+
+        // from the "Encoded Polyline Algorithm Format" page at Google
+        t.eq(format.decodeUnsignedInteger('mD'), 174);
+    }
+
+    </script>
+</head>
+<body>
+</body>
+</html>
diff --git a/tests/Format/Filter/v1.html b/tests/Format/Filter/v1.html
index b109b31..a862955 100644
--- a/tests/Format/Filter/v1.html
+++ b/tests/Format/Filter/v1.html
@@ -51,6 +51,38 @@
              "[1] record correct upper boundary value");
     }
 
+    function test_PropertyIsNull(t) {
+
+        t.plan(3);
+
+        var format, test_xml, xml, filter, node;
+
+        format = new OpenLayers.Format.Filter.v1();
+
+        test_xml =
+            '<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">' +
+                '<ogc:PropertyIsNull>' +
+                    '<ogc:PropertyName>prop</ogc:PropertyName>' +
+                '</ogc:PropertyIsNull>' +
+            '</ogc:Filter>';
+
+        // Test reading a PropertyIsNull filter from an XML doc
+        xml = new OpenLayers.Format.XML();
+        filter = format.read(xml.read(test_xml).documentElement);
+        t.eq(filter.type, OpenLayers.Filter.Comparison.IS_NULL,
+             "[0] read correct type");
+        t.eq(filter.property, 'prop',
+             "[0] record correct property name");
+
+        // Test writing a PropertyIsNull filter out to XML
+        filter = new OpenLayers.Filter.Comparison({
+            type: OpenLayers.Filter.Comparison.IS_NULL,
+            property: "prop"
+        });
+        node = format.write(filter);
+        t.xml_eq(node, test_xml, "filter correctly written");
+
+    }
 
     function test_Intersects(t) {
         
@@ -214,6 +246,78 @@
         t.xml_eq(got, exp, "wrote FID filter in logical NOT without complaint");
     }
 
+    function test_between_literal(t) {
+        t.plan(3);
+
+        var filter = new OpenLayers.Filter.Comparison({
+            type: OpenLayers.Filter.Comparison.BETWEEN,
+            property: "foo",
+            lowerBoundary: 1.0,
+            upperBoundary: 2.0
+        });
+        var format = new OpenLayers.Format.Filter.v1_0_0();
+        
+        var exp = format.read(readXML("BetweenLiteral"));
+
+        // confirm that reading works as expected
+        t.eq(exp.property, "foo", "property");
+        t.eq(exp.lowerBoundary, 1.0, "lowerBoundary");
+        t.eq(exp.upperBoundary, 2.0, "upperBoundary");
+    }
+
+
+    function test_date_writing(t) {
+        t.plan(1);
+
+        // ISO 8601: 2010-11-27T18:19:15.123Z
+        var start = new Date(Date.UTC(2010, 10, 27, 18, 19, 15, 123));
+
+        // ISO 8601: 2011-12-27T18:19:15.123Z
+        var end = new Date(Date.UTC(2011, 11, 27, 18, 19, 15, 123));
+
+        var filter = new OpenLayers.Filter.Comparison({
+            type: OpenLayers.Filter.Comparison.BETWEEN,
+            property: "when",
+            lowerBoundary: start,
+            upperBoundary: end
+        });
+
+        var format = new OpenLayers.Format.Filter.v1_0_0();
+
+        var got = format.write(filter);
+        var exp = readXML("BetweenDates");
+        t.xml_eq(got, exp, "comparison filter with dates");
+    }
+
+
+    function test_custom_date_writing(t) {
+        t.plan(1);
+
+        // ISO 8601: 2010-11-27T18:19:15.123Z
+        var start = new Date(Date.UTC(2010, 10, 27, 18, 19, 15, 123));
+
+        // ISO 8601: 2011-12-27T18:19:15.123Z
+        var end = new Date(Date.UTC(2011, 11, 27, 18, 19, 15, 123));
+
+        var filter = new OpenLayers.Filter.Comparison({
+            type: OpenLayers.Filter.Comparison.BETWEEN,
+            property: "when",
+            lowerBoundary: start,
+            upperBoundary: end
+        });
+
+        var format = new OpenLayers.Format.Filter({
+            encodeLiteral: function(value) {
+                // return just the date and not the time portion
+                return OpenLayers.Date.toISOString(value).split("T").shift();
+            }
+        });
+
+        var got = format.write(filter);
+        var exp = readXML("CustomBetweenDates");
+        t.xml_eq(got, exp, "comparison filter with dates");
+    }
+
 
     function readXML(id) {
         var xml = document.getElementById(id).firstChild.nodeValue;
@@ -256,6 +360,45 @@
     </ogc:Not>
 </ogc:Filter>
 --></div>
+<div id="BetweenLiteral"><!--
+<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
+    <ogc:PropertyIsBetween>
+        <ogc:PropertyName>foo</ogc:PropertyName>
+        <ogc:LowerBoundary>
+            <ogc:Literal>1.0</ogc:Literal>
+        </ogc:LowerBoundary>
+        <ogc:UpperBoundary>
+            <ogc:Literal>2.0</ogc:Literal>
+        </ogc:UpperBoundary>
+    </ogc:PropertyIsBetween>
+</ogc:Filter>
+--></div>
+<div id="BetweenDates"><!--
+<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
+    <ogc:PropertyIsBetween>
+        <ogc:PropertyName>when</ogc:PropertyName>
+        <ogc:LowerBoundary>
+            <ogc:Literal>2010-11-27T18:19:15.123Z</ogc:Literal>
+        </ogc:LowerBoundary>
+        <ogc:UpperBoundary>
+            <ogc:Literal>2011-12-27T18:19:15.123Z</ogc:Literal>
+        </ogc:UpperBoundary>
+    </ogc:PropertyIsBetween>
+</ogc:Filter>
+--></div>
+<div id="CustomBetweenDates"><!--
+<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
+    <ogc:PropertyIsBetween>
+        <ogc:PropertyName>when</ogc:PropertyName>
+        <ogc:LowerBoundary>
+            <ogc:Literal>2010-11-27</ogc:Literal>
+        </ogc:LowerBoundary>
+        <ogc:UpperBoundary>
+            <ogc:Literal>2011-12-27</ogc:Literal>
+        </ogc:UpperBoundary>
+    </ogc:PropertyIsBetween>
+</ogc:Filter>
+--></div>
 
 </body> 
 </html> 
diff --git a/tests/Format/GML/cases.js b/tests/Format/GML/cases.js
index 258c570..88499cd 100644
--- a/tests/Format/GML/cases.js
+++ b/tests/Format/GML/cases.js
@@ -198,14 +198,19 @@ var cases = {
             ])
         ])
     ]),
-
+    
     "v2/box-coord.xml": new OpenLayers.Bounds(1, 2, 3, 4),
     
-    "v2/box-coordinates.xml": new OpenLayers.Bounds(1, 2, 3, 4)
+    "v2/box-coordinates.xml": new OpenLayers.Bounds(1, 2, 3, 4),
+    
+    "v3/linestring3d.xml": new OpenLayers.Geometry.LineString([
+        new OpenLayers.Geometry.Point(1, 2, 3),
+        new OpenLayers.Geometry.Point(4, 5, 6)
+    ])
     
 };
 
-// cases for v3 use the same geometries
+// some cases for v3 use the same geometries
 OpenLayers.Util.extend(cases, {
     "v3/point.xml": cases["v2/point-coordinates.xml"],
     "v3/linestring.xml": cases["v2/linestring-coordinates.xml"],
diff --git a/tests/Format/GML/v3.html b/tests/Format/GML/v3.html
index 9e6c5b8..92f2154 100644
--- a/tests/Format/GML/v3.html
+++ b/tests/Format/GML/v3.html
@@ -10,8 +10,8 @@
             "v2/linestring-coord.xml", "v2/linestring-coordinates.xml",
             "v2/multipoint-coord.xml", "v2/multipoint-coordinates.xml",
             "v2/multilinestring-coord.xml", "v2/multilinestring-coordinates.xml",
-            "v3/point.xml", "v3/linestring.xml", "v3/curve.xml",
-            "v3/polygon.xml", "v3/surface.xml",
+            "v3/point.xml", "v3/linestring.xml", "v3/linestring3d.xml",
+            "v3/curve.xml", "v3/polygon.xml", "v3/surface.xml",
             "v3/multipoint-singular.xml", "v3/multipoint-plural.xml",
             "v3/multilinestring-singular.xml", "v3/multilinestring-plural.xml",
             "v3/multicurve-singular.xml", "v3/multicurve-curve.xml",
@@ -332,6 +332,11 @@
   <gml:posList>1 2 3 4</gml:posList>
 </gml:LineString>
 --></div>
+<div id="v3/linestring3d.xml"><!--
+<gml:LineString xmlns:gml="http://www.opengis.net/gml" srsName="foo" srsDimension="3">
+  <gml:posList>1 2 3 4 5 6</gml:posList>
+</gml:LineString>
+--></div>
 <div id="v3/curve.xml"><!--
 <gml:Curve xmlns:gml="http://www.opengis.net/gml" srsName="foo">
     <gml:segments>
diff --git a/tests/Format/GPX.html b/tests/Format/GPX.html
index ee08de9..6286cfe 100644
--- a/tests/Format/GPX.html
+++ b/tests/Format/GPX.html
@@ -20,6 +20,10 @@
     }
     function test_Format_GPX_read(t) {
         t.plan(7);
+        
+        var origDefaultPrecision = OpenLayers.Util.DEFAULT_PRECISION;
+        OpenLayers.Util.DEFAULT_PRECISION = 9;
+        
         var expected,
             P = OpenLayers.Geometry.Point,
             LS = OpenLayers.Geometry.LineString;
@@ -61,6 +65,8 @@
                 new P(-19493.373203291227, 6684644.845706556)
         ]);
         t.geom_eq(features[1].geometry, expected, "transformed route feature correctly created");
+
+        OpenLayers.Util.DEFAULT_PRECISION = origDefaultPrecision;
     }
     function test_format_GPX_read_attributes(t) {
         t.plan(2);
diff --git a/tests/Format/KML.html b/tests/Format/KML.html
index a7dfd97..ba87637 100644
--- a/tests/Format/KML.html
+++ b/tests/Format/KML.html
@@ -236,13 +236,13 @@
         var f = new OpenLayers.Format.KML();
 
         t.eq(f.read(f.write(feature))[0].attributes.name, feature.id, "placemark name from feature.id");
-
-        feature.attributes.name = "placemark name from attributes.name";
-        t.eq(f.read(f.write(feature))[0].attributes.name, feature.attributes.name, "placemark name from attributes.name");
         feature.style = {
             label: "placemark name from style.label"
         };
         t.eq(f.read(f.write(feature))[0].attributes.name, feature.style.label, "placemark name from style.label");
+
+        feature.attributes.name = "placemark name from attributes.name";
+        t.eq(f.read(f.write(feature))[0].attributes.name, feature.attributes.name, "placemark name from attributes.name");
     }
     function test_Format_KML_linestring_projected(t) {
         t.plan(1);
@@ -259,14 +259,14 @@
     
     function test_extractTracks(t) {
         
-        t.plan(12);
+        t.plan(13);
         
         var xml = new OpenLayers.Format.XML(); 
         var doc = xml.read(document.getElementById("macnoise.kml").firstChild.nodeValue);
         
         var format = new OpenLayers.Format.KML({
             extractTracks: true,
-            trackAttributes: ["speed"] // additional custom attributes
+            trackAttributes: ["speed", "num"] // additional custom attributes
         });
         
         var features = format.read(doc.documentElement);
@@ -289,6 +289,7 @@
         
         // additional per point attributes (determined by trackAttributes property)
         t.eq(attr.speed, "166", "correct speed");
+        t.eq(attr.num, "50", "correct num");
         
         var exp = new OpenLayers.Geometry.Point(-93.0753620391713, 44.9879724110872);
         exp.z = 1006;
@@ -525,6 +526,21 @@
     <speed>180</speed>
     <speed>184</speed>
     <speed>177</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>E170</name>
@@ -590,6 +606,20 @@
     <speed>347</speed>
     <speed>334</speed>
     <speed>337</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>BE33</name>
@@ -659,6 +689,21 @@
     <speed>155</speed>
     <speed>155</speed>
     <speed>156</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>A319</name>
@@ -728,6 +773,21 @@
     <speed>365</speed>
     <speed>350</speed>
     <speed>354</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>E145</name>
@@ -797,6 +857,21 @@
     <speed>228</speed>
     <speed>232</speed>
     <speed>236</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>E170</name>
@@ -854,6 +929,18 @@
     <speed>278</speed>
     <speed>283</speed>
     <speed>288</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>DC95</name>
@@ -923,6 +1010,21 @@
     <speed>368</speed>
     <speed>355</speed>
     <speed>362</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>B737</name>
@@ -992,6 +1094,21 @@
     <speed>270</speed>
     <speed>277</speed>
     <speed>287</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>A318</name>
@@ -1057,6 +1174,20 @@
     <speed>215</speed>
     <speed>222</speed>
     <speed>231</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
 </gx:Track></Placemark>
 <Placemark>
   <name></name>
@@ -1114,6 +1245,18 @@
     <speed>147</speed>
     <speed>147</speed>
     <speed>150</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>CRJ2</name>
@@ -1181,6 +1324,19 @@
     <speed>136</speed>
     <speed>136</speed>
     <speed>123</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
 </gx:Track></Placemark>
 <Placemark>
   <name>E170</name>
@@ -1250,6 +1406,21 @@
     <speed>193</speed>
     <speed>194</speed>
     <speed>185</speed>
+    <num>10</num>
+    <num>20</num>
+    <num>30</num>
+    <num>40</num>
+    <num>50</num>
+    <num>60</num>
+    <num>70</num>
+    <num>80</num>
+    <num>90</num>
+    <num>100</num>
+    <num>110</num>
+    <num>120</num>
+    <num>130</num>
+    <num>140</num>
+    <num>150</num>
 </gx:Track></Placemark>
 </Folder>
 <Folder>
diff --git a/tests/Format/OWSContext/v0_3_1.html b/tests/Format/OWSContext/v0_3_1.html
index 938fee2..54b63b3 100644
--- a/tests/Format/OWSContext/v0_3_1.html
+++ b/tests/Format/OWSContext/v0_3_1.html
@@ -120,6 +120,43 @@
         t.xml_eq(output, expected, "OWSContext with a WMS and an inline GML vector layer generated correctly");
     }
 
+    function test_write_inlinegml_no_features(t){
+        var lon = 5,
+            lat = 40,
+            zoom = 5,
+            map = new OpenLayers.Map( 'map' ),
+            layer = new OpenLayers.Layer.WMS(
+                "OpenLayers WMS",
+                "http://labs.metacarta.com/wms/vmap0",
+                {layers: 'basic'},
+                {singleTile: true}
+            ),
+            vector = new OpenLayers.Layer.Vector();
+
+        map.addLayers( [ layer, vector ] );
+        map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
+
+        var owc = new OpenLayers.Format.OWSContext(),
+            output,
+            caughtException = false,
+            expectedXml = '<OWSContext xmlns="http://www.opengis.net/ows-context" version="0.3.1" id="foo" xsi:schemaLocation="http://www.opengis.net/ows-context http://www.ogcnetwork.net/schemas/owc/0.3.1/owsContext.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><General><ows:BoundingBox xmlns:ows="http://www.opengis.net/ows" crs="EPSG:4326"><ows:LowerCorner>-5.986328125 29.013671875</ows:LowerCorner><ows:UpperCorner>15.986328125 50.986328125</ows:UpperCorner></ows:BoundingB [...]
+
+        try {
+            output = owc.write(map, {id: 'foo'});
+        } catch (e){
+            caughtException = true;
+        }
+
+        if (caughtException) {
+            t.plan(1);
+            t.fail('OWSContext with a WMS and an inline vector layer failed and threw an exception');
+        } else {
+            t.plan(2);
+            t.ok(true, 'OWSContext with a WMS and an inline vector layer generated without exception');
+            t.xml_eq(output, expectedXml, "OWSContext with a WMS and an inline vector layer generated correctly");
+        }
+    }
+
     function test_read_inline(t) {
         t.plan(10);
         var text = '<?xml version="1.0" encoding="UTF-8"?><OWSContext xmlns="http://www.opengis.net/ows-context" xmlns:gml="http://www.opengis.net/gml" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows" xmlns:sld="http://www.opengis.net/sld" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="0.3.1" id="ows-context-ex-1-v3" xsi:schemaLocation="http://www.opengis.net [...]
diff --git a/tests/Format/SLD/v1_0_0.html b/tests/Format/SLD/v1_0_0.html
index a295a74..fbc18a6 100644
--- a/tests/Format/SLD/v1_0_0.html
+++ b/tests/Format/SLD/v1_0_0.html
@@ -523,6 +523,14 @@
         
     }
 
+    function test_whitespace(t) {
+        t.plan(1);
+        var xml = readXML("propertyisbetweenwhitespace.sld");
+        var output = new OpenLayers.Format.SLD().read(xml);
+        var filter = output.namedLayers['geonode:US_Stat0'].userStyles[0].rules[0].filter;
+        t.eq(filter.lowerBoundary, 29.7, "whitespace ignored in values and value transformed to number");
+    }
+
     function test_label_LinePlacement(t) {
         t.plan(1);
         var format = new OpenLayers.Format.SLD.v1_0_0({
@@ -970,5 +978,51 @@
     </sld:FeatureTypeStyle>
 </sld:UserStyle>
 --></div>
+<div id="propertyisbetweenwhitespace.sld"><!--
+<sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:sld="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml" version="1.0.0">
+    <sld:NamedLayer>
+        <sld:Name>geonode:US_Stat0</sld:Name>
+        <sld:UserStyle>
+            <sld:Name>US_Stat0_5cbbe918</sld:Name>
+            <sld:Title>BMI<25</sld:Title>
+            <sld:FeatureTypeStyle>
+                <sld:Name>name</sld:Name>
+                <sld:Rule>
+                    <sld:Title>BMI<25</sld:Title>
+                    <ogc:Filter>
+                        <ogc:PropertyIsBetween>
+                            <ogc:PropertyName>Hlt_st_BMI</ogc:PropertyName>
+                            <ogc:LowerBoundary>
+                                <ogc:Literal>
+
+
+                                	29.7
+
+
+                            </ogc:Literal>
+                            </ogc:LowerBoundary>
+                            <ogc:UpperBoundary>
+                                <ogc:Literal>
+
+
+                                 36.2
+
+
+                            </ogc:Literal>
+                            </ogc:UpperBoundary>
+                        </ogc:PropertyIsBetween>
+                    </ogc:Filter>
+                    <sld:PolygonSymbolizer>
+                        <sld:Fill>
+                            <sld:CssParameter name="fill">#C0F58C</sld:CssParameter>
+                        </sld:Fill>
+                        <sld:Stroke/>
+                    </sld:PolygonSymbolizer>
+                </sld:Rule>
+            </sld:FeatureTypeStyle>
+        </sld:UserStyle>
+    </sld:NamedLayer>
+</sld:StyledLayerDescriptor>
+--></div>
 </body> 
 </html> 
diff --git a/tests/Format/SLD/v1_0_0_GeoServer.html b/tests/Format/SLD/v1_0_0_GeoServer.html
index 8793d59..96a3ef6 100644
--- a/tests/Format/SLD/v1_0_0_GeoServer.html
+++ b/tests/Format/SLD/v1_0_0_GeoServer.html
@@ -37,6 +37,18 @@
         out = format.write(data);
         t.xml_eq(out, readXML("poly_label_nographic.sld").documentElement, "If graphic is false no Graphic is outputted");
     }
+
+    function test_readTextSymbolizer(t) {
+        t.plan(1);
+        var format = new OpenLayers.Format.SLD({
+            profile: "GeoServer",
+            multipleSymbolizers: true,
+            namedLayersAsArray: true
+        });
+        doc = readXML("point_pointwithdefaultlabel.sld");
+        var sld = format.read(doc);
+        t.eq(sld.namedLayers[0].userStyles[0].rules[0].symbolizers[1].graphic, false, "graphic set to false on TextSymbolizer");
+    }
     
     </script> 
 </head> 
@@ -174,5 +186,43 @@
   </NamedLayer>
 </StyledLayerDescriptor>
 --></div>
+<div id="point_pointwithdefaultlabel.sld"><!--
+<StyledLayerDescriptor version="1.0.0" 
+    xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd" 
+    xmlns="http://www.opengis.net/sld" 
+    xmlns:ogc="http://www.opengis.net/ogc" 
+    xmlns:xlink="http://www.w3.org/1999/xlink" 
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <NamedLayer>
+    <Name>Point with default label</Name>
+    <UserStyle>
+      <Title>GeoServer SLD Cook Book: Point with default label</Title>
+      <FeatureTypeStyle>
+        <Rule>
+          <PointSymbolizer>
+            <Graphic>
+              <Mark>
+                <WellKnownName>circle</WellKnownName>
+                <Fill>
+                  <CssParameter name="fill">#FF0000</CssParameter>
+                </Fill>
+              </Mark>
+              <Size>6</Size>
+            </Graphic>
+          </PointSymbolizer>
+          <TextSymbolizer>
+            <Label>
+              <ogc:PropertyName>name</ogc:PropertyName>
+            </Label>
+            <Fill>
+              <CssParameter name="fill">#000000</CssParameter>
+            </Fill>
+          </TextSymbolizer>
+        </Rule>
+      </FeatureTypeStyle>
+    </UserStyle>
+  </NamedLayer>
+</StyledLayerDescriptor>
+--></div>
 </body> 
 </html> 
diff --git a/tests/Format/WFSCapabilities.html b/tests/Format/WCSCapabilities.html
similarity index 55%
copy from tests/Format/WFSCapabilities.html
copy to tests/Format/WCSCapabilities.html
index 4e6545e..b3e90b6 100644
--- a/tests/Format/WFSCapabilities.html
+++ b/tests/Format/WCSCapabilities.html
@@ -5,39 +5,39 @@
     
     function test_read(t) {
         t.plan(4);
-       
-        var _v1_0_0 = OpenLayers.Format.WFSCapabilities.v1_0_0.prototype.read;
-        var _v1_1_0 = OpenLayers.Format.WFSCapabilities.v1_1_0.prototype.read;
 
-        var parser = new OpenLayers.Format.WFSCapabilities();
+        var _v1_0_0 = OpenLayers.Format.WCSCapabilities.v1_0_0.prototype.read;
+        var _v1_1_0 = OpenLayers.Format.WCSCapabilities.v1_1_0.prototype.read;
+
+        var parser = new OpenLayers.Format.WCSCapabilities();
 
         // version 1.0.0
         var text =
             '<?xml version="1.0" encoding="UTF-8"?>' +
-            '<wfs:WFS_Capabilities version="1.0.0" xmlns:wfs="http://www.opengis.net/wfs"></wfs:WFS_Capabilities>';
-        OpenLayers.Format.WFSCapabilities.v1_0_0.prototype.read = function() {
+            '<wcs:WCS_Capabilities version="1.0.0" xmlns:wcs="http://www.opengis.net/wcs"></wcs:WCS_Capabilities>';
+        OpenLayers.Format.WCSCapabilities.v1_0_0.prototype.read = function() {
             t.ok(true, "Version 1.0.0 detected");
             return {};
         }
         var res = parser.read(text);
         t.eq(res.version, "1.0.0", "version 1.0.0 written to result object");
-        OpenLayers.Format.WFSCapabilities.v1_1_0.prototype.read = _v1_1_0;
+        OpenLayers.Format.WCSCapabilities.v1_1_0.prototype.read = _v1_1_0;
 
         // version 1.1.0
         var text =
             '<?xml version="1.0" encoding="UTF-8"?>' +
-            '<wfs:WFS_Capabilities version="1.1.0" xmlns:wfs="http://www.opengis.net/wfs"></wfs:WFS_Capabilities>';
-        OpenLayers.Format.WFSCapabilities.v1_1_0.prototype.read = function() {
+            '<wcs:WCS_Capabilities version="1.1.0" xmlns:wcs="http://www.opengis.net/wcs/1.1"></wcs:WCS_Capabilities>';
+        OpenLayers.Format.WCSCapabilities.v1_1_0.prototype.read = function() {
             t.ok(true, "Version 1.1.0 detected");
             return {};
         }
         var res = parser.read(text);
         t.eq(res.version, "1.1.0", "version 1.1.0 written to result object");
-        OpenLayers.Format.WFSCapabilities.v1_1_0.prototype.read = _v1_1_0;
+        OpenLayers.Format.WCSCapabilities.v1_1_0.prototype.read = _v1_1_0;
     }
 
     </script> 
 </head> 
 <body>
 </body> 
-</html>
\ No newline at end of file
+</html>
diff --git a/tests/Format/WCSCapabilities/v1.html b/tests/Format/WCSCapabilities/v1.html
new file mode 100644
index 0000000..180edc7
--- /dev/null
+++ b/tests/Format/WCSCapabilities/v1.html
@@ -0,0 +1,87 @@
+<html> 
+<head> 
+    <script src="../../OLLoader.js"></script>
+    <script type="text/javascript">
+
+    function test_read_exception(t) {
+        t.plan(1);
+        var parser = new OpenLayers.Format.WCSCapabilities();
+        var text = '<?xml version="1.0" encoding="UTF-8"?>' +
+            '<ows:ExceptionReport language="en" version="1.0.0"' +
+            '    xsi:schemaLocation="http://www.opengis.net/ows http://schemas.opengis.net/ows/1.0.0/owsExceptionReport.xsd"' +
+            '    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ows="http://www.opengis.net/ows">' +
+            '    <ows:Exception locator="foo" exceptionCode="InvalidParameterValue">' +
+            '        <ows:ExceptionText>Update error: Error occured updating features</ows:ExceptionText>' +
+            '        <ows:ExceptionText>Second exception line</ows:ExceptionText>' +
+            '    </ows:Exception>' +
+            '</ows:ExceptionReport>';
+
+        var obj = parser.read(text);
+        t.ok(!!obj.error, "Error reported correctly");      // The above should place an error in obj.error
+    }
+    
+    function test_read(t) {
+        t.plan(34);     // Number of tests performed: If you add a test below, be sure to increment this accordingly
+       
+        var parser = new OpenLayers.Format.WCSCapabilities();
+
+        // MapServer, v1.0.0
+        var text = '<?xml version="1.0" encoding="UTF-8"?><WCS_Capabilities xmlns="http://www.opengis.net/wcs" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0.0" updateSequence="0" xsi:schemaLocation="http://www.opengis.net/wcs http://schemas.opengis.net/wcs/1.0.0/wcsCapabilities.xsd"><Service><name>MapServer WCS</name><label>WCS Sample Data Server 1.0.0</label><keywords><keyword>Geospati [...]
+
+        var res = parser.read(text);
+
+        t.ok(!res.error, "Parsing XML generated no errors");
+        t.eq(res.service.fees, "mucho dinero", "Service>Fees correctly parsed");
+        t.eq(res.service.accessConstraints, "Open to the public", "Service>AccessConstraints correctly parsed");
+        t.eq(res.service.keywords.length, 2, "Correct number of Service>Keywords found");
+        t.eq(res.service.keywords[0], "Geospatial WebServices", "Service>Keywords correctly parsed");
+        t.eq(res.service.label, "WCS Sample Data Server 1.0.0", "Service>Label correctly parsed");
+        t.eq(res.service.name, "MapServer WCS", "Service>Name correctly parsed");
+
+        var responsibleParty = res.service.responsibleParty;
+        t.eq(responsibleParty.individualName, "Franko Lemmer", "Service>ResponsibleParty>IndividualName correctly parsed");
+        t.eq(responsibleParty.organisationName, "CRP Henri Tudor", "Service>ResponsibleParty>OrganisationName correctly parsed");
+        t.eq(responsibleParty.positionName, "R+D engineer", "Service>ResponsibleParty>PositionName correctly parsed");
+        t.eq(responsibleParty.contactInfo.address.city, "Esch-sur-Alzette", "Service>responsibleParty>ContactInfo>Address>City correctly parsed");
+        t.eq(responsibleParty.contactInfo.address.country, "Luxembourg", "Service>responsibleParty>ContactInfo>Address>Country correctly parsed");
+        t.eq(responsibleParty.contactInfo.address.deliveryPoint, "66, rue de Luxembourg", "Service>responsibleParty>ContactInfo>Address>DeliveryPoint correctly parsed");
+        t.eq(responsibleParty.contactInfo.address.electronicMailAddress, "franko.lemmer at flensburger.de", "Service>responsibleParty>ContactInfo>Address>ElectronicMailAddress correctly parsed");
+        t.eq(responsibleParty.contactInfo.address.postalCode, "97202", "Service>responsibleParty>ContactInfo>Address>PostalCode correctly parsed");
+        t.eq(responsibleParty.contactInfo.phone.facsimile, "6465955", "Service>responsibleParty>ContactInfo>Phone>Facsimile correctly parsed");
+        t.eq(responsibleParty.contactInfo.phone.voice, "6463320", "Service>responsibleParty>ContactInfo>Phone>Voice correctly parsed");
+
+        var metadata = res.contentMetadata[0];
+
+        t.eq(metadata.name, "ro_dsm", "ContentMetadata>Name correctly parsed");
+        t.eq(metadata.label, "Rotterdam DSM", "ContentMetadata>Label correctly parsed");
+        t.eq(metadata.lonLatEnvelope.min.x, 51.515151, "ContentMetadata>lonLatEnvelope>Min>Lat correctly parsed");
+        t.eq(metadata.lonLatEnvelope.min.y, 4.44444, "ContentMetadata>lonLatEnvelope>Min>Lon correctly parsed");
+        t.eq(metadata.lonLatEnvelope.max.x, 52.525252, "ContentMetadata>lonLatEnvelope>Max>Lat correctly parsed");
+        t.eq(metadata.lonLatEnvelope.max.y, 5.55555, "ContentMetadata>lonLatEnvelope>Max>Lon correctly parsed");
+        t.eq(metadata.lonLatEnvelope.srsName, "urn:ogc:def:crs:OGC:1.3:CRS84", "ContentMetadata>lonLatEnvelope>SrsName correctly parsed");
+        t.eq(res.contentMetadata.length, 4, "Correct number of metadata records found");
+
+
+        // MapServer, v1.1.0
+        text = '<?xml version="1.0" encoding="UTF-8"?><Capabilities xmlns="http://www.opengis.net/wcs/1.1" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogc="http://www.opengis.net/ogc" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wcs/1.1 http://schemas.opengis.net/wcs/1.1/wcsGetCapabilities.xsd http://www.opengis.net/ows/1.1 http://schemas.opengis.net/ows/1.1.0/owsAll.xsd">< [...]
+
+        res = parser.read(text);
+
+        // Most of the parsing is handled by other objects, so not much actually requires testing here
+        t.ok(!res.error, "Parsing XML generated no errors");
+        t.eq(res.contentMetadata.length, 4, "number of features correct");
+
+        var metadata = res.contentMetadata[0];
+        t.eq(metadata.identifier, "ro_dsm", "correct identifier");
+        t.eq(metadata.title, "Rotterdam DSM", "correct title");
+        t.eq(metadata.abstract, "Digital Surface Model (DSM) raster data set of inner city Rotterdam", "correct abstract");
+        t.eq(metadata.supportedFormat.length, 1, "correct number of supported formats");
+        t.eq(metadata.supportedFormat[0], "image/tiff", "correct format");
+        t.eq(metadata.supportedCRS.length, 4, "correct number of CRS records");
+        t.eq(metadata.supportedCRS[2], "urn:ogc:def:crs:EPSG::3857", "correct CRS");
+    }
+
+    </script> 
+</head> 
+<body> </body>
+</html>
diff --git a/tests/Format/WFSCapabilities.html b/tests/Format/WFSCapabilities.html
index 4e6545e..fc2ff2d 100644
--- a/tests/Format/WFSCapabilities.html
+++ b/tests/Format/WFSCapabilities.html
@@ -40,4 +40,4 @@
 </head> 
 <body>
 </body> 
-</html>
\ No newline at end of file
+</html>
diff --git a/tests/Format/WFSCapabilities/v1.html b/tests/Format/WFSCapabilities/v1.html
index ebd371d..0bc1705 100644
--- a/tests/Format/WFSCapabilities/v1.html
+++ b/tests/Format/WFSCapabilities/v1.html
@@ -17,17 +17,19 @@
 '</ows:ExceptionReport>';
 
         var obj = parser.read(text);
-        t.ok(!!obj.error, "Error reported correctly");
+        t.ok(!!obj.error, "Error reported correctly");      // The above should place an error in obj.error
     }
     
     function test_read(t) {
-        t.plan(35);
+        t.plan(37);     // Number of tests performed: If you add a test below, be sure to increment this accordingly
        
         var parser = new OpenLayers.Format.WFSCapabilities();
 
         // GeoServer, v1.1.0
         var text = '<?xml version="1.0" encoding="UTF-8"?><wfs:WFS_Capabilities version="1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wfs" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ows="http://www.opengis.net/ows" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wfs http://localhost:80/geoserver/schemas/wfs/1.1.0/wfs.xsd" xmln [...]
         var res = parser.read(text);
+
+        t.ok(!res.error, "Parsing XML generated no errors");
         t.eq(res.operationsMetadata["GetFeature"].dcp.http.get[0].url, "http://localhost:80/geoserver/wfs?", "GetFeature GET endpoint correctly parsed");
         t.eq(res.operationsMetadata["GetFeature"].dcp.http.post[0].url, "http://localhost:80/geoserver/wfs?", "GetFeature POST endpoint correctly parsed");
         var ft = res.featureTypeList.featureTypes;
@@ -41,6 +43,8 @@
         // GeoServer, v1.0.0
         text = '<?xml version="1.0" encoding="UTF-8"?><WFS_Capabilities version="1.0.0" xmlns="http://www.opengis.net/wfs" xmlns:it.geosolutions="http://www.geo-solutions.it" xmlns:cite="http://www.opengeospatial.net/cite" xmlns:tiger="http://www.census.gov" xmlns:sde="http://geoserver.sf.net" xmlns:topp="http://www.openplans.org/topp" xmlns:sf="http://www.openplans.org/spearfish" xmlns:nurc="http://www.nurc.nato.int" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/20 [...]
         res = parser.read(text);
+
+        t.ok(!res.error, "Parsing XML generated no errors");
         ft = res.featureTypeList.featureTypes;
         t.eq(ft.length, 14, "number of feature types correct");
         t.eq(ft[0]["abstract"], "Manhattan landmarks, identifies water, lakes, parks, interesting buildilngs", "abstract of first feature type correct");
diff --git a/tests/Format/WFSDescribeFeatureType.html b/tests/Format/WFSDescribeFeatureType.html
index 53faa5d..77f348d 100644
--- a/tests/Format/WFSDescribeFeatureType.html
+++ b/tests/Format/WFSDescribeFeatureType.html
@@ -374,8 +374,63 @@
         // GeoServer example above
     }
 
+    function test_read_exception(t) {
+        t.plan(1);
+        var text = 
+            '<?xml version="1.0" encoding="UTF-8"?>' +
+            '<ows:ExceptionReport version="1.0.0"' +
+            '  xsi:schemaLocation="http://www.opengis.net/ows http://localhost:8080/geoserver/schemas/ows/1.0.0/owsExceptionReport.xsd"' +
+            '  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ows="http://www.opengis.net/ows">' +
+            '  <ows:Exception exceptionCode="NoApplicableCode">' +
+            '    <ows:ExceptionText>Could not find type: {http://geonode.org/}_map_4_annotations</ows:ExceptionText>' +
+            '  </ows:Exception>' +
+            '</ows:ExceptionReport>';
+        var format = new OpenLayers.Format.WFSDescribeFeatureType();
+        var obj = format.read(text);
+        t.ok(!!obj.error, "Error reported correctly");
+    }
+
+    function test_read_annotation(t) {
+        t.plan(2);
+        var text = 
+            '<?xml version="1.0" encoding="UTF-8"?>' +
+            '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"' +
+            '  xmlns:analytics="http://opengeo.org/analytics" xmlns:cite="http://www.opengeospatial.net/cite"' +
+            '  xmlns:gml="http://www.opengis.net/gml" xmlns:it.geosolutions="http://www.geo-solutions.it"' +
+            '  xmlns:nurc="http://www.nurc.nato.int" xmlns:og="http://opengeo.org"' +
+            '  xmlns:sde="http://geoserver.sf.net" xmlns:sf="http://www.openplans.org/spearfish"' +
+            '  xmlns:tiger="http://www.census.gov" xmlns:tike="http://opengeo.org/#tike"' +
+            '  xmlns:topp="http://www.openplans.org/topp" xmlns:usgs="http://www.usgs.gov/"' +
+            '  xmlns:za="http://opengeo.org/za" elementFormDefault="qualified"' +
+            '  targetNamespace="http://www.openplans.org/topp">' +
+            '  <xsd:import namespace="http://www.opengis.net/gml"' +
+            '    schemaLocation="http://demo.opengeo.org/geoserver/schemas/gml/3.1.1/base/gml.xsd"/>' +
+            '  <xsd:complexType name="statesType">' +
+            '    <xsd:complexContent>' +
+            '      <xsd:extension base="gml:AbstractFeatureType">' +
+            '        <xsd:sequence>' +
+            '          <xsd:element maxOccurs="1" minOccurs="0" name="PERSONS" nillable="true" type="xsd:double">' +
+            '            <xsd:annotation>' +
+            '              <xsd:appinfo>{"title":{"en":"Population"}}</xsd:appinfo>' +
+            '              <xsd:documentation xml:lang="en"> Number of persons living in the state' +
+            '              </xsd:documentation>' +
+            '            </xsd:annotation>' +
+            '          </xsd:element>' +
+            '        </xsd:sequence>' +
+            '      </xsd:extension>' +
+            '    </xsd:complexContent>' +
+            '  </xsd:complexType>' +
+            '  <xsd:element name="states" substitutionGroup="gml:_Feature" type="topp:statesType"/>' +
+            '</xsd:schema>';
+        var format = new OpenLayers.Format.WFSDescribeFeatureType();
+        var res = format.read(text);
+        var property = res.featureTypes[0].properties[0];
+        t.eq(property.annotation.appinfo[0], '{"title":{"en":"Population"}}', "appinfo read correctly");
+        t.eq(property.annotation.documentation[0], {lang: "en", textContent: 'Number of persons living in the state'}, "documentation read correctly");
+    }
+
     </script> 
 </head> 
 <body>
 </body> 
-</html>
\ No newline at end of file
+</html>
diff --git a/tests/Format/WFST/v1_0_0.html b/tests/Format/WFST/v1_0_0.html
index 89d810e..a8fce79 100644
--- a/tests/Format/WFST/v1_0_0.html
+++ b/tests/Format/WFST/v1_0_0.html
@@ -11,7 +11,7 @@
     }
     
     function test_read(t) {
-        t.plan(2);
+        t.plan(3);
         
         var data = readXML("Transaction_Response");        
         var format = new OpenLayers.Format.WFST.v1_0_0({
@@ -19,7 +19,8 @@
             featureType: "states"
         });
         var result = format.read(data);
-        t.eq(result.insertIds[0], "none", "InsertIds read correctly");
+        t.eq(result.insertIds[0], "parcelle.40", "First InsertId read correctly");
+        t.eq(result.insertIds[1], "parcelle.41", "Second InsertId read correctly");
         t.eq(result.success, true, "Success read correctly");
     }
     
@@ -91,7 +92,8 @@
 <div id="Transaction_Response"><!--
 <wfs:WFS_TransactionResponse version="1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ogc="http://www.opengis.net/ogc">
     <wfs:InsertResult>
-        <ogc:FeatureId fid="none"/>
+        <ogc:FeatureId fid="parcelle.40"/>
+        <ogc:FeatureId fid="parcelle.41"/>
     </wfs:InsertResult>
     <wfs:TransactionResult>
         <wfs:Status>
diff --git a/tests/Format/WFST/v1_1_0.html b/tests/Format/WFST/v1_1_0.html
index 6fd024a..52c9cee 100644
--- a/tests/Format/WFST/v1_1_0.html
+++ b/tests/Format/WFST/v1_1_0.html
@@ -11,7 +11,7 @@
     }
     
     function test_read(t) {
-        t.plan(2);
+        t.plan(3);
         
         var data = readXML("TransactionResponse");        
         var format = new OpenLayers.Format.WFST.v1_1_0({
@@ -19,7 +19,8 @@
             featureType: "states"
         });
         var result = format.read(data);
-        t.eq(result.insertIds[0], "none", "InsertIds read correctly");
+        t.eq(result.insertIds[0], "parcelle.40", "First InsertId read correctly");
+        t.eq(result.insertIds[1], "parcelle.41", "Second InsertId read correctly");
         t.eq(result.success, true, "Success read correctly");
     }
 
@@ -137,7 +138,10 @@
     <wfs:TransactionResults/>
     <wfs:InsertResults>
         <wfs:Feature>
-            <ogc:FeatureId fid="none"/>
+            <ogc:FeatureId fid="parcelle.40"/>
+        </wfs:Feature>
+        <wfs:Feature>
+            <ogc:FeatureId fid="parcelle.41"/>
         </wfs:Feature>
     </wfs:InsertResults>
 </wfs:TransactionResponse>
diff --git a/tests/Format/WMSCapabilities/v1_1_1.html b/tests/Format/WMSCapabilities/v1_1_1.html
index 8309bd7..e3b0863 100644
--- a/tests/Format/WMSCapabilities/v1_1_1.html
+++ b/tests/Format/WMSCapabilities/v1_1_1.html
@@ -332,7 +332,7 @@
 
     }
     function test_ogc(t) {
-        t.plan(14)
+        t.plan(16)
 
         /*
          * Set up
@@ -340,7 +340,7 @@
         
         // needed for the minScale/maxScale test, see below
         var dpi = OpenLayers.DOTS_PER_INCH;
-        OpenLayers.DOTS_PER_INCH = 90.71;
+        OpenLayers.DOTS_PER_INCH = 90.710230403857;
 
         var xml = document.getElementById("ogcsample").firstChild.nodeValue;
         var doc = new OpenLayers.Format.XML().read(xml);
@@ -377,7 +377,7 @@
 
         <ScaleHint min="0.395998292216226" max="98.9995730540565" />
 
-        corresponds to (RESOLUTION keyword in MAP file has value of 90.71):
+        corresponds to (RESOLUTION keyword in MAP file has value of 90.710230403857):
 
         MAXSCALE 250000
         MINSCALE 1000
@@ -386,6 +386,8 @@
         t.eq(capability.layers[0].minScale, 250000, "layer.minScale is correct");
         t.eq(capability.layers[0].maxScale, 1000, "layer.maxScale is correct");
 
+        t.eq(capability.layers[1].minScale, undefined, "layer.minScale for max='Infinity' is correct");
+        t.eq(capability.layers[1].maxScale, undefined, "layer.maxScale for min='0' is correct");
         /*
          * Tear down
          */
@@ -590,8 +592,6 @@ Changes:
         </StyleSheetURL>
       </Style>
 
-      <ScaleHint min="4000" max="35000"></ScaleHint>
-
 
       <Layer queryable="1">
     <Name>ROADS_1M</Name> 
@@ -641,6 +641,7 @@ Changes:
           <Keyword>canal</Keyword>
           <Keyword>waterway</Keyword>
     </KeywordList>
+    <ScaleHint min="0" max="Infinity" />
       </Layer>
     </Layer>
     <Layer queryable="1">
diff --git a/tests/Format/WMSCapabilities/v1_1_1_WMSC.html b/tests/Format/WMSCapabilities/v1_1_1_WMSC.html
index 10bcfb1..044773d 100644
--- a/tests/Format/WMSCapabilities/v1_1_1_WMSC.html
+++ b/tests/Format/WMSCapabilities/v1_1_1_WMSC.html
@@ -24,10 +24,146 @@
         t.eq(tileset.styles, "", "Styles correctly parsed");
     }
 
+    function test_read_fallback(t) {
+        t.plan(1);
+        var xml = document.getElementById("fallback").firstChild.nodeValue;
+        var doc = new OpenLayers.Format.XML().read(xml);
+        var format = new OpenLayers.Format.WMSCapabilities({profile: "WMSC", allowFallback: true});
+        var obj = format.read(doc);
+        t.eq(obj.capability.layers.length, 2, "2 layers parsed with allowFallback true");
+    }
+
     </script> 
 </head> 
 <body>
 
+<div id="fallback"><!--
+<?xml version='1.0' encoding="ISO-8859-1" standalone="no" ?>
+<!DOCTYPE WMT_MS_Capabilities SYSTEM "http://schemas.opengis.net/wms/1.1.0/capabilities_1_1_0.dtd"
+ [
+ <!ELEMENT VendorSpecificCapabilities EMPTY>
+ ]>  
+<WMT_MS_Capabilities version="1.1.0">
+
+<Service>
+  <Name>OGC:WMS</Name>
+  <Title>i3Geo - i3geo</Title>
+  <Abstract>Web services gerados da base de dados do i3Geo. Para chamar um tema especificamente, veja o sistema de ajuda, digitando no navegador web ogc.php?ajuda=, para uma lista compacta de todos os servicos, digite ogc.php?lista=temas</Abstract>
+        <KeywordList>
+          <Keyword>i3Geo</Keyword>
+        </KeywordList>
+  <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/>
+  <ContactInformation>
+    <ContactPersonPrimary>
+      <ContactPerson>Web Master</ContactPerson>
+      <ContactOrganization>Coordena??o Geral de TI</ContactOrganization>
+    </ContactPersonPrimary>
+      <ContactPosition>Administrador do s?tio web</ContactPosition>
+    <ContactAddress>
+        <AddressType>uri</AddressType>
+        <Address>http://www.mma.gov.br</Address>
+        <City>Brasilia</City>
+        <StateOrProvince>DF</StateOrProvince>
+        <PostCode></PostCode>
+        <Country>Brasil</Country>
+    </ContactAddress>
+  <ContactElectronicMailAddress>geoprocessamento at mma.gov.br</ContactElectronicMailAddress>
+  </ContactInformation>
+  <Fees>none</Fees>
+  <AccessConstraints>vedado o uso comercial</AccessConstraints>
+</Service>
+
+<Capability>
+  <Request>
+    <GetCapabilities>
+      <Format>application/vnd.ogc.wms_xml</Format>
+      <DCPType>
+        <HTTP>
+          <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Get>
+          <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Post>
+        </HTTP>
+      </DCPType>
+    </GetCapabilities>
+    <GetMap>
+      <Format>image/png</Format>
+      <Format>image/jpeg</Format>
+      <Format>image/gif</Format>
+      <Format>image/png; mode=8bit</Format>
+      <Format>application/x-pdf</Format>
+      <Format>image/svg+xml</Format>
+      <Format>image/tiff</Format>
+      <Format>application/vnd.google-earth.kml+xml</Format>
+      <Format>application/vnd.google-earth.kmz</Format>
+      <DCPType>
+        <HTTP>
+          <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Get>
+          <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Post>
+        </HTTP>
+      </DCPType>
+    </GetMap>
+    <GetFeatureInfo>
+      <Format>text/plain</Format>
+      <Format>application/vnd.ogc.gml</Format>
+      <DCPType>
+        <HTTP>
+          <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Get>
+          <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Post>
+        </HTTP>
+      </DCPType>
+    </GetFeatureInfo>
+    <DescribeLayer>
+      <Format>text/xml</Format>
+      <DCPType>
+        <HTTP>
+          <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Get>
+          <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo/ogc.php?"/></Post>
+        </HTTP>
+      </DCPType>
+    </DescribeLayer>
+  </Request>
+  <Exception>
+    <Format>application/vnd.ogc.se_xml</Format>
+    <Format>application/vnd.ogc.se_inimage</Format>
+    <Format>application/vnd.ogc.se_blank</Format>
+  </Exception>
+  <VendorSpecificCapabilities />
+  <UserDefinedSymbolization SupportSLD="1" UserLayer="0" UserStyle="1" RemoteWFS="0"/>
+  <Layer>
+    <Name>i3geoogc</Name>
+    <Title>i3Geo - i3geo</Title>
+    <Abstract>Web services gerados da base de dados do i3Geo. Para chamar um tema especificamente, veja o sistema de ajuda, digitando no navegador web ogc.php?ajuda=, para uma lista compacta de todos os servicos, digite ogc.php?lista=temas</Abstract>
+    <KeywordList>
+     <Keyword>i3Geo</Keyword>
+    </KeywordList>
+    <SRS></SRS>
+    <LatLonBoundingBox minx="-76.5126" miny="-36.9484" maxx="-29.5852" maxy="7.04601" />
+    <BoundingBox SRS=""
+                minx="-76.5126" miny="-36.9484" maxx="-29.5852" maxy="7.04601" />
+    <Attribution>
+        <Title>i3Geo</Title>
+        <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://mapas.mma.gov.br/i3geo"/>
+        <LogoURL width="85" height="56">
+             <Format>image/png</Format>
+             <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://mapas.mma.gov.br/i3geo/imagens/i3geo.png"/>
+          </LogoURL>
+    </Attribution>
+    <Layer queryable="1" opaque="0" cascaded="0">
+        <Name>antigo_caminantes</Name>
+        <Title>Guia de Caminantes - 1817</Title>
+        <SRS> EPSG:4618 EPSG:4291 EPSG:4326 EPSG:22521 EPSG:22522 EPSG:22523 EPSG:22524 EPSG:22525 EPSG:29101 EPSG:29119 EPSG:29120 EPSG:29121 EPSG:29122 EPSG:29177 EPSG:29178 EPSG:29179 EPSG:29180 EPSG:29181 EPSG:29182 EPSG:29183 EPSG:29184 EPSG:29185</SRS>
+        <LatLonBoundingBox minx="-75.2336" miny="-33.7516" maxx="-27.593" maxy="5.27216" />
+        <BoundingBox SRS=""
+                    minx="-75.2336" miny="-33.7516" maxx="-27.593" maxy="5.27216" />
+        <MetadataURL type="TC211">
+          <Format>text/html</Format>
+          <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://consorcio.bn.br"/>
+        </MetadataURL>
+    </Layer>
+  </Layer>
+</Capability>
+</WMT_MS_Capabilities>
+--></div>
+
 <div id="wmsc"><!--
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE WMT_MS_Capabilities SYSTEM "http://schemas.opengis.net/wms/1.1.1/capabilities_1_1_1.dtd"[
diff --git a/tests/Format/WMSDescribeLayer.html b/tests/Format/WMSDescribeLayer.html
index f564da3..7a53269 100644
--- a/tests/Format/WMSDescribeLayer.html
+++ b/tests/Format/WMSDescribeLayer.html
@@ -4,7 +4,7 @@
     <script type="text/javascript">
     
     function test_read_WMSDescribeLayer(t) {
-        t.plan(5);
+        t.plan(10);
        
         var parser = new OpenLayers.Format.WMSDescribeLayer();
 
@@ -17,23 +17,47 @@
 
         var res = parser.read(text);
 
-        t.eq(res.length, 1,
+        t.eq(res.layerDescriptions.length, 1,
             "Only one LayerDescription in data, so only one parsed");
 
-        t.eq(res[0].owsType, "WFS",
+        t.eq(res.layerDescriptions[0].owsType, "WFS",
             "Properly parses owsType as WFS");
 
-        t.eq(res[0].owsURL, "http://geo.openplans.org:80/geoserver/wfs/WfsDispatcher?",
+        t.eq(res.layerDescriptions[0].owsURL, "http://geo.openplans.org:80/geoserver/wfs/WfsDispatcher?",
             "Properly parses owsURL");
 
-        t.eq(res[0].typeName, "topp:states",
+        t.eq(res.layerDescriptions[0].typeName, "topp:states",
             "Properly parses typeName");
 
+        t.eq(res.layerDescriptions[0].layerName, "topp:states",
+            "Properly parses name");
+        
+        //TODO remove the 5 tests below when we deprecate the old structure
+        t.eq(res.length, 1,
+            "Only one LayerDescription in data, so only one parsed");
+        t.eq(res[0].owsType, "WFS",
+            "Properly parses owsType as WFS");
+        t.eq(res[0].owsURL, "http://geo.openplans.org:80/geoserver/wfs/WfsDispatcher?",
+            "Properly parses owsURL");
+        t.eq(res[0].typeName, "topp:states",
+            "Properly parses typeName");
         t.eq(res[0].layerName, "topp:states",
             "Properly parses name");
 
     }
 
+    function test_read_exception(t) {
+        t.plan(1);
+        var text = '<?xml version="1.0" encoding="UTF-8" standalone="no"?>' +
+            '<!DOCTYPE ServiceExceptionReport SYSTEM "http://schemas.opengis.net/wms/1.1.1/WMS_exception_1_1_1.dtd">' +
+            '<ServiceExceptionReport version="1.1.1" >   <ServiceException code="LayerNotDefined">' +
+            'geonode:_map_107_annotations: no such layer on this server' +
+            '</ServiceException></ServiceExceptionReport>';
+        var format = new OpenLayers.Format.WMSDescribeLayer();
+        var obj = format.read(text);
+        t.ok(!!obj.error, "Error reported correctly");
+    }
+
     </script> 
 </head> 
 <body>
diff --git a/tests/Format/WMTSCapabilities/v1_0_0.html b/tests/Format/WMTSCapabilities/v1_0_0.html
index f8b5a37..f4fadeb 100644
--- a/tests/Format/WMTSCapabilities/v1_0_0.html
+++ b/tests/Format/WMTSCapabilities/v1_0_0.html
@@ -43,15 +43,15 @@
                  undefined,
                  "ows:OperationsMetadata GetTile Constraints Get is correct");
         }
-    
+
         function test_layers(t) {
-            t.plan(37);
+            t.plan(43);
             var xml = document.getElementById("ogcsample").firstChild.nodeValue;
             var doc = new OpenLayers.Format.XML().read(xml);
-    
+
             var obj = new OpenLayers.Format.WMTSCapabilities().read(doc);
             var contents = obj.contents;
-    
+
             var numOfLayers = contents.layers.length;
             t.eq(numOfLayers, 1, "correct count of layers");
 
@@ -89,13 +89,23 @@
             t.eq(wgs84Bbox.top, 90.0, "wgs84BoudingBox top is correct");
 
             t.eq(layer.resourceUrl.tile.format, "image/png", "resourceUrl.tile.format is correct");
-            t.eq(layer.resourceUrl.tile.template, "http://www.example.com/wmts/coastlines/{TileMatrix}/{TileRow}/{TileCol}.png", 
+            t.eq(layer.resourceUrl.tile.template, "http://www.example.com/wmts/coastlines/{TileMatrix}/{TileRow}/{TileCol}.png",
                  "resourceUrl.tile.template is correct");
 
             t.eq(layer.resourceUrl.FeatureInfo.format, "application/gml+xml; version=3.1", "resourceUrl.FeatureInfo.format is correct");
-            t.eq(layer.resourceUrl.FeatureInfo.template, "http://www.example.com/wmts/coastlines/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}/{J}/{I}.xml", 
+            t.eq(layer.resourceUrl.FeatureInfo.template, "http://www.example.com/wmts/coastlines/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}/{J}/{I}.xml",
                  "resourceUrl.FeatureInfo.template is correct");
 
+            t.eq(layer.resourceUrls[0].format, "image/png", "resourceUrls[0].format is correct");
+            t.eq(layer.resourceUrls[0].resourceType, "tile", "resourceUrls[0].resourceType is correct");
+            t.eq(layer.resourceUrls[0].template, "http://www.example.com/wmts/coastlines/{TileMatrix}/{TileRow}/{TileCol}.png",
+                 "resourceUrls[0].template is correct");
+
+            t.eq(layer.resourceUrls[1].format, "application/gml+xml; version=3.1", "resourceUrls[0].format is correct");
+            t.eq(layer.resourceUrls[1].resourceType, "FeatureInfo", "resourceUrls[0].resourceType is correct");
+            t.eq(layer.resourceUrls[1].template, "http://www.example.com/wmts/coastlines/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}/{J}/{I}.xml",
+                 "resourceUrls[0].template is correct");
+
             var dimensions = layer.dimensions;
             t.eq(dimensions.length, 1, "correct count of dimensions");
             t.eq(dimensions[0].title, "Time", "first dimension title is correct");
@@ -112,7 +122,7 @@
             t.plan(19);
             var xml = document.getElementById("ogcsample").firstChild.nodeValue;
             var doc = new OpenLayers.Format.XML().read(xml);
-    
+
             var obj = new OpenLayers.Format.WMTSCapabilities().read(doc);
 
             var tileMatrixSets = obj.contents.tileMatrixSets;
@@ -138,54 +148,200 @@
             t.eq(bigWorld.matrixIds[1].topLeftCorner.lon, -180, "tileMatrix 1 topLeftCorner.lon is correct");
             t.eq(bigWorld.matrixIds[1].topLeftCorner.lat, 84, "tileMatrix 1 topLeftCorner.lat is correct");
         }
-        
+
         function test_createLayer(t) {
-            t.plan(7);
-            
+            t.plan(43);
+
             var format = new OpenLayers.Format.WMTSCapabilities();
 
             var xml = document.getElementById("ogcsample").firstChild.nodeValue;
             var doc = new OpenLayers.Format.XML().read(xml);
-    
+
             var caps = format.read(doc);
             var layer;
-            
+
             var success = true;
             try {
-                // incomplete config (missing matrixSet)
+                // incomplete config (missing layer)
                 layer = format.createLayer(caps, {
-                    layer: "coastlines"
                 });
             } catch (err) {
                 success = false;
             }
             t.ok(!success, "createLayer throws error if provided incomplete layer config");
-            
+
             // bogus layer identifier
-            layer = format.createLayer(caps, {
-                layer: "foo",
-                matrixSet: "BigWorld"
-            });
-            t.eq(layer, undefined, "createLayer returns undefined given bad layer identifier");
-            
+            try {
+                layer = format.createLayer(caps, {
+                    layer: "foo",
+                    matrixSet: "BigWorld"
+                });
+            } catch (err) {
+                success = false;
+            }
+            t.ok(!success, "createLayer returns undefined given bad layer identifier");
+
             // bogus matrixSet identifier
-            layer = format.createLayer(caps, {
-                layer: "coastlines",
-                matrixSet: "TheWorld"
-            });
-            t.eq(layer, undefined, "createLayer returns undefined given bad matrixSet identifier");
-            
+            try {
+                layer = format.createLayer(caps, {
+                    layer: "coastlines",
+                    matrixSet: "TheWorld"
+                });
+            } catch (err) {
+                success = false;
+            }
+            t.ok(!success, "createLayer returns undefined given bad matrixSet identifier");
+
             layer = format.createLayer(caps, {
                 layer: "coastlines",
                 matrixSet: "BigWorld"
             });
             t.ok(layer instanceof OpenLayers.Layer.WMTS, "correct instance");
-            
+
+            // autodetect matrixSet
+            layer = format.createLayer(caps, {
+                layer: "coastlines"
+            });
+            t.ok(layer instanceof OpenLayers.Layer.WMTS, "correct instance, with autodetected matrixSet");
+
             t.eq(layer.matrixIds.length, 2, "correct matrixIds length");
             t.eq(layer.name, "Coastlines", "correct layer title");
             t.eq(layer.style, "DarkBlue", "correct style identifier");
+            t.eq(layer.requestEncoding, "KVP", "correct requestEncoding");
+
+            xml = document.getElementById("restsample").firstChild.nodeValue;
+            doc = new OpenLayers.Format.XML().read(xml);
+            caps = format.read(doc);
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781"
+            });
+            t.ok(layer instanceof OpenLayers.Layer.WMTS, "correct instance");
+            t.eq(layer.url[0], "http://wmts.geo.admin.ch/1.0.0/ch.are.agglomerationen_isolierte_staedte-2000/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png", "correct url");
+            t.eq(layer.url[1], "http://wmts1.geo.admin.ch/1.0.0/ch.are.agglomerationen_isolierte_staedte-2000/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png", "correct url");
+            t.eq(layer.matrixIds.length, 3, "correct matrixIds length");
+            t.eq(layer.requestEncoding, "REST", "correct requestEncoding");
+            t.eq(layer.name, "Agglomérations et villes isolées", "correct layer title");
+            t.eq(layer.style, "ch.are.agglomerationen_isolierte_staedte-2000", "correct style identifier");
+            t.eq(layer.projection.getCode(), "EPSG:21781", "correct projection");
+            t.eq(layer.units, "m", "correct untis");
+            t.ok(layer.serverResolutions === layer.resolutions, "serverResolutions set");
+            t.eq(layer.resolutions.length, 3, "correct resolutions length");
+            t.ok((layer.resolutions[0] - 4000) < 1, "correct first resolution");
+            t.eq(layer.dimensions.length, 1, "correct dimensions length");
+            t.eq(layer.dimensions[0], "Time", "correct dimensions");
+            t.eq(layer.params['TIME'], "20090101", "correct params");
+
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                style: "toto",
+                params: {"Time": "2012"}
+            });
+            t.eq(layer.matrixIds.length, 3, "correct matrixIds length");
+            t.eq(layer.style, "toto", "correct style identifier");
+            t.eq(layer.dimensions.length, 1, "correct dimensions length");
+            t.eq(layer.dimensions[0], "Time", "correct dimensions");
+            t.eq(layer.params['TIME'], "2012", "correct params");
+
+            // test projection and units
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                units: 'degrees'
+            });
+            t.eq(layer.units, "degrees", "correct units");
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                projection: "EPSG:4326"
+            });
+            t.eq(layer.projection.getCode(), "EPSG:4326", "correct projection");
+            t.eq(layer.units, "degrees", "correct units");
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                projection: "EPSG:4326",
+                units: 'm'
+            });
+            t.eq(layer.projection.getCode(), "EPSG:4326", "correct projection");
+            t.eq(layer.units, "m", "correct units");
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                projection: "EPSG:900913",
+                units: 'degrees'
+            });
+            t.eq(layer.projection.getCode(), "EPSG:900913", "correct projection");
+            t.eq(layer.units, "degrees", "correct units");
+
+
+            // test get the right url #608/3
+            xml = document.getElementById("multi-getile-1").firstChild.nodeValue;
+            doc = new OpenLayers.Format.XML().read(xml);
+            caps = format.read(doc);
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                requestEncoding: 'REST'
+            });
+            t.eq(layer.url[0], "http://wmts.geo.admin.ch/rest", "correct rest url 1");
+            t.eq(layer.url[1], "http://wmts1.geo.admin.ch/rest", "correct rest url 1");
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                requestEncoding: 'KVP'
+            });
+            t.eq(layer.url[0], "http://wmts.geo.admin.ch/kvp", "correct kvp url 2");
+            t.eq(layer.url[1], "http://wmts1.geo.admin.ch/kvp", "correct kvp url 2");
+            xml = document.getElementById("multi-getile-2").firstChild.nodeValue;
+            doc = new OpenLayers.Format.XML().read(xml);
+            caps = format.read(doc);
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                requestEncoding: 'REST'
+            });
+            t.eq(layer.url[0], "http://wmts.geo.admin.ch/rest", "correct rest url 2");
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781",
+                requestEncoding: 'KVP'
+            });
+            t.eq(layer.url[0], "http://wmts.geo.admin.ch/kvp", "correct kvp url 2");
+
+            // test RESTfull
+            xml = document.getElementById("arcgis").firstChild.nodeValue;
+            doc = new OpenLayers.Format.XML().read(xml);
+            caps = format.read(doc);
+            layer = format.createLayer(caps, {
+                layer: "WorldTimeZones"
+            });
+            t.eq(layer.requestEncoding, "REST", "correct requestEncoding (in RESTfull)");
+        }
+
+        function test_parse_projection(t) {
+            t.plan(2);
+
+            var format = new OpenLayers.Format.WMTSCapabilities();
+
+            var xml = document.getElementById("restsample-alternate-proj1").firstChild.nodeValue;
+            var doc = new OpenLayers.Format.XML().read(xml);
+            var caps = format.read(doc);
+            var layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781"
+            });
+            t.eq(layer.projection.getCode(), "EPSG:21781", "correct projection");
+
+            xml = document.getElementById("restsample-alternate-proj2").firstChild.nodeValue;
+            doc = new OpenLayers.Format.XML().read(xml);
+            caps = format.read(doc);
+            layer = format.createLayer(caps, {
+                layer: "ch.are.agglomerationen_isolierte_staedte-2000",
+                matrixSet: "21781"
+            });
+            t.eq(layer.projection.getCode(), "EPSG:21781", "correct projection");
         }
-        
     </script>
 </head>
 <body>
@@ -300,15 +456,15 @@ http://schemas.opengis.net/wmts/1.0/examples/wmtsGetCapabilities_response.xml
                 <TileMatrixSet>BigWorld</TileMatrixSet>
             </TileMatrixSetLink>
         </Layer>
-        <TileMatrixSet>        
+        <TileMatrixSet>
             <ows:Identifier>BigWorld</ows:Identifier>
             <ows:SupportedCRS>urn:ogc:def:crs:OGC:1.3:CRS84</ows:SupportedCRS>
             <TileMatrix>
                 <ows:Identifier>1e6</ows:Identifier>
-                <ScaleDenominator>1e6</ScaleDenominator>        
-                <TopLeftCorner>-180 84</TopLeftCorner>        
+                <ScaleDenominator>1e6</ScaleDenominator>
+                <TopLeftCorner>-180 84</TopLeftCorner>
                 <TileWidth>256</TileWidth>
-                <TileHeight>256</TileHeight>        
+                <TileHeight>256</TileHeight>
                 <MatrixWidth>60000</MatrixWidth>
                 <MatrixHeight>50000</MatrixHeight>
             </TileMatrix>
@@ -354,5 +510,533 @@ http://schemas.opengis.net/wmts/1.0/examples/wmtsGetCapabilities_response.xml
     </Themes>
 </Capabilities>
 --></div>
+
+<div id="restsample"><!--
+<?xml version="1.0" encoding="UTF-8"?>
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd" version="1.0.0">
+    <ows:ServiceIdentification>
+        <ows:Title>Federal Geodata Infrastructure of Switzerland</ows:Title>
+        <ows:Abstract>Some Geodata are subject to license and fees</ows:Abstract>
+        <ows:Keywords>
+            <ows:Keyword>FGDI</ows:Keyword>
+            <ows:Keyword>Pixelkarte</ows:Keyword>
+            <ows:Keyword>Switzerland</ows:Keyword>
+        </ows:Keywords>
+        <ows:ServiceType>OGC WMTS</ows:ServiceType>
+        <ows:ServiceTypeVersion>1.0.0</ows:ServiceTypeVersion>
+        <ows:Fees>yes</ows:Fees>
+        <ows:AccessConstraints>license</ows:AccessConstraints>
+    </ows:ServiceIdentification>
+    <ows:ServiceProvider>
+        <ows:ProviderName>swisstopo</ows:ProviderName>
+        <ows:ProviderSite xlink:href="http://www.swisstopo.admin.ch"/>
+        <ows:ServiceContact>
+            <ows:IndividualName>David Oesch</ows:IndividualName>
+            <ows:PositionName></ows:PositionName>
+            <ows:ContactInfo>
+                <ows:Phone>
+                    <ows:Voice>+41 (0)31 / 963 21 11</ows:Voice>
+                    <ows:Facsimile>+41 (0)31 / 963 24 59</ows:Facsimile>
+                </ows:Phone>
+                <ows:Address>
+                    <ows:DeliveryPoint>swisstopo</ows:DeliveryPoint>
+                    <ows:City>Bern</ows:City>
+                    <ows:AdministrativeArea>BE</ows:AdministrativeArea>
+                    <ows:PostalCode>3084</ows:PostalCode>
+                    <ows:Country>Switzerland</ows:Country>
+                    <ows:ElectronicMailAddress/>
+                </ows:Address>
+            </ows:ContactInfo>
+        </ows:ServiceContact>
+    </ows:ServiceProvider>
+    <ows:OperationsMetadata>
+        <ows:Operation name="GetCapabilities">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/1.0.0/WMTSCapabilities.xml">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+        <ows:Operation name="GetTile">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+    </ows:OperationsMetadata>
+    <Contents>
+        <Layer>
+            <ows:Title>Agglomérations et villes isolées</ows:Title>
+            <ows:Abstract>Les agglomérations et villes isolées (communes non rattachées à une agglomération et comptant au moins 10`000 habitants) font partie des régions d’analyse de la statistique suisse. Ce niveau géographique est défini depuis plus de 100 ans, afin de mesurer l’urbanisation, phénomène fondamental structurant l’organisation du territoire. Sa fonction principale est de permettre une comparaison spatiale entre des espaces urbains inégalement délimités sur le plan instit [...]
+            <ows:WGS84BoundingBox>
+                <ows:LowerCorner>5.140242 45.398181</ows:LowerCorner>
+                <ows:UpperCorner>11.47757 48.230651</ows:UpperCorner>
+            </ows:WGS84BoundingBox>
+            <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+            <ows:Metadata xlink:href="http://www.swisstopo.admin.ch/SITiled/world/AdminBoundaries/metadata.htm"/>
+            <Style>
+                <ows:Title>Agglomérations et villes isolées</ows:Title>
+                <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+                <LegendURL format="image/png" xlink:href="http://api.geo.admin.ch/legend/ch.are.agglomerationen_isolierte_staedte-2000_fr.png" />
+            </Style>
+            <Format>image/png</Format>
+            <Dimension>
+                <ows:Identifier>Time</ows:Identifier>
+                <Default>20090101</Default>
+                <Value>20090101</Value>
+            </Dimension>
+            <TileMatrixSetLink>
+                <TileMatrixSet>21781</TileMatrixSet>
+            </TileMatrixSetLink>
+            <ResourceURL format="image/png" resourceType="tile" template="http://wmts.geo.admin.ch/1.0.0/ch.are.agglomerationen_isolierte_staedte-2000/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png"/>
+            <ResourceURL format="image/png" resourceType="tile" template="http://wmts1.geo.admin.ch/1.0.0/ch.are.agglomerationen_isolierte_staedte-2000/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png"/>
+        </Layer>
+        <TileMatrixSet>
+            <ows:Identifier>21781</ows:Identifier>
+            <ows:SupportedCRS>urn:ogc:def:crs:EPSG::21781</ows:SupportedCRS>
+            <TileMatrix>
+                <ows:Identifier>0</ows:Identifier>
+                <ScaleDenominator>14285750.5715</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>1</MatrixWidth>
+                <MatrixHeight>1</MatrixHeight>
+            </TileMatrix>
+            <TileMatrix>
+                <ows:Identifier>8</ows:Identifier>
+                <ScaleDenominator>7142875.28575</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>1</MatrixWidth>
+                <MatrixHeight>1</MatrixHeight>
+            </TileMatrix>
+            <TileMatrix>
+                <ows:Identifier>12</ows:Identifier>
+                <ScaleDenominator>3571437.64288</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>2</MatrixWidth>
+                <MatrixHeight>2</MatrixHeight>
+            </TileMatrix>
+        </TileMatrixSet>
+    </Contents>
+    <ServiceMetadataURL xlink:href="http://www.opengis.uab.es/SITiled/world/1.0.0/WMTSCapabilities.xml"/>
+</Capabilities>
+--></div>
+
+<div id="restsample-alternate-proj1"><!--
+<?xml version="1.0" encoding="UTF-8"?>
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd" version="1.0.0">
+    <ows:OperationsMetadata>
+        <ows:Operation name="GetCapabilities">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/1.0.0/WMTSCapabilities.xml">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+        <ows:Operation name="GetTile">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+    </ows:OperationsMetadata>
+    <Contents>
+        <Layer>
+            <ows:Title>Agglomérations et villes isolées</ows:Title>
+            <ows:Abstract>Les agglomérations et villes isolées (communes non rattachées à une agglomération et comptant au moins 10`000 habitants) font partie des régions d’analyse de la statistique suisse. Ce niveau géographique est défini depuis plus de 100 ans, afin de mesurer l’urbanisation, phénomène fondamental structurant l’organisation du territoire. Sa fonction principale est de permettre une comparaison spatiale entre des espaces urbains inégalement délimités sur le plan instit [...]
+            <ows:WGS84BoundingBox>
+                <ows:LowerCorner>5.140242 45.398181</ows:LowerCorner>
+                <ows:UpperCorner>11.47757 48.230651</ows:UpperCorner>
+            </ows:WGS84BoundingBox>
+            <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+            <ows:Metadata xlink:href="http://www.swisstopo.admin.ch/SITiled/world/AdminBoundaries/metadata.htm"/>
+            <Style>
+                <ows:Title>Agglomérations et villes isolées</ows:Title>
+                <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+                <LegendURL format="image/png" xlink:href="http://api.geo.admin.ch/legend/ch.are.agglomerationen_isolierte_staedte-2000_fr.png" />
+            </Style>
+            <Format>image/png</Format>
+            <Dimension>
+                <ows:Identifier>Time</ows:Identifier>
+                <Default>20090101</Default>
+                <Value>20090101</Value>
+            </Dimension>
+            <TileMatrixSetLink>
+                <TileMatrixSet>21781</TileMatrixSet>
+            </TileMatrixSetLink>
+            <ResourceURL format="image/png" resourceType="tile" template="http://wmts.geo.admin.ch/1.0.0/ch.are.agglomerationen_isolierte_staedte-2000/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png"/>
+        </Layer>
+        <TileMatrixSet>
+            <ows:Identifier>21781</ows:Identifier>
+            <ows:SupportedCRS>urn:ogc:def:crs:EPSG:21781</ows:SupportedCRS>
+            <TileMatrix>
+                <ows:Identifier>0</ows:Identifier>
+                <ScaleDenominator>14285750.5715</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>1</MatrixWidth>
+                <MatrixHeight>1</MatrixHeight>
+            </TileMatrix>
+        </TileMatrixSet>
+    </Contents>
+    <ServiceMetadataURL xlink:href="http://www.opengis.uab.es/SITiled/world/1.0.0/WMTSCapabilities.xml"/>
+</Capabilities>
+--></div>
+
+<div id="restsample-alternate-proj2"><!--
+<?xml version="1.0" encoding="UTF-8"?>
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd" version="1.0.0">
+    <ows:OperationsMetadata>
+        <ows:Operation name="GetCapabilities">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/1.0.0/WMTSCapabilities.xml">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+        <ows:Operation name="GetTile">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+    </ows:OperationsMetadata>
+    <Contents>
+        <Layer>
+            <ows:Title>Agglomérations et villes isolées</ows:Title>
+            <ows:Abstract>Les agglomérations et villes isolées (communes non rattachées à une agglomération et comptant au moins 10`000 habitants) font partie des régions d’analyse de la statistique suisse. Ce niveau géographique est défini depuis plus de 100 ans, afin de mesurer l’urbanisation, phénomène fondamental structurant l’organisation du territoire. Sa fonction principale est de permettre une comparaison spatiale entre des espaces urbains inégalement délimités sur le plan instit [...]
+            <ows:WGS84BoundingBox>
+                <ows:LowerCorner>5.140242 45.398181</ows:LowerCorner>
+                <ows:UpperCorner>11.47757 48.230651</ows:UpperCorner>
+            </ows:WGS84BoundingBox>
+            <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+            <ows:Metadata xlink:href="http://www.swisstopo.admin.ch/SITiled/world/AdminBoundaries/metadata.htm"/>
+            <Style>
+                <ows:Title>Agglomérations et villes isolées</ows:Title>
+                <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+                <LegendURL format="image/png" xlink:href="http://api.geo.admin.ch/legend/ch.are.agglomerationen_isolierte_staedte-2000_fr.png" />
+            </Style>
+            <Format>image/png</Format>
+            <Dimension>
+                <ows:Identifier>Time</ows:Identifier>
+                <Default>20090101</Default>
+                <Value>20090101</Value>
+            </Dimension>
+            <TileMatrixSetLink>
+                <TileMatrixSet>21781</TileMatrixSet>
+            </TileMatrixSetLink>
+            <ResourceURL format="image/png" resourceType="tile" template="http://wmts.geo.admin.ch/1.0.0/ch.are.agglomerationen_isolierte_staedte-2000/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png"/>
+        </Layer>
+        <TileMatrixSet>
+            <ows:Identifier>21781</ows:Identifier>
+            <ows:SupportedCRS>urn:ogc:def:crs:EPSG:1.0:21781</ows:SupportedCRS>
+            <TileMatrix>
+                <ows:Identifier>0</ows:Identifier>
+                <ScaleDenominator>14285750.5715</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>1</MatrixWidth>
+                <MatrixHeight>1</MatrixHeight>
+            </TileMatrix>
+        </TileMatrixSet>
+    </Contents>
+    <ServiceMetadataURL xlink:href="http://www.opengis.uab.es/SITiled/world/1.0.0/WMTSCapabilities.xml"/>
+</Capabilities>
+--></div>
+
+<div id="multi-getile-1"><!--
+<?xml version="1.0" encoding="UTF-8"?>
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd" version="1.0.0">
+    <ows:OperationsMetadata>
+        <ows:Operation name="GetCapabilities">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/1.0.0/WMTSCapabilities.xml">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+        <ows:Operation name="GetTile">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/rest">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                    <ows:Get xlink:href="http://wmts1.geo.admin.ch/rest">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/kvp">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>KVP</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                    <ows:Get xlink:href="http://wmts1.geo.admin.ch/kvp">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>KVP</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+    </ows:OperationsMetadata>
+    <Contents>
+        <Layer>
+            <ows:Title>Agglomérations et villes isolées</ows:Title>
+            <ows:Abstract>Les agglomérations et villes isolées (communes non rattachées à une agglomération et comptant au moins 10`000 habitants) font partie des régions d’analyse de la statistique suisse. Ce niveau géographique est défini depuis plus de 100 ans, afin de mesurer l’urbanisation, phénomène fondamental structurant l’organisation du territoire. Sa fonction principale est de permettre une comparaison spatiale entre des espaces urbains inégalement délimités sur le plan instit [...]
+            <ows:WGS84BoundingBox>
+                <ows:LowerCorner>5.140242 45.398181</ows:LowerCorner>
+                <ows:UpperCorner>11.47757 48.230651</ows:UpperCorner>
+            </ows:WGS84BoundingBox>
+            <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+            <ows:Metadata xlink:href="http://www.swisstopo.admin.ch/SITiled/world/AdminBoundaries/metadata.htm"/>
+            <Style>
+                <ows:Title>Agglomérations et villes isolées</ows:Title>
+                <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+                <LegendURL format="image/png" xlink:href="http://api.geo.admin.ch/legend/ch.are.agglomerationen_isolierte_staedte-2000_fr.png" />
+            </Style>
+            <Format>image/png</Format>
+            <Dimension>
+                <ows:Identifier>Time</ows:Identifier>
+                <Default>20090101</Default>
+                <Value>20090101</Value>
+            </Dimension>
+            <TileMatrixSetLink>
+                <TileMatrixSet>21781</TileMatrixSet>
+            </TileMatrixSetLink>
+        </Layer>
+        <TileMatrixSet>
+            <ows:Identifier>21781</ows:Identifier>
+            <ows:SupportedCRS>urn:ogc:def:crs:EPSG:1.0:21781</ows:SupportedCRS>
+            <TileMatrix>
+                <ows:Identifier>0</ows:Identifier>
+                <ScaleDenominator>14285750.5715</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>1</MatrixWidth>
+                <MatrixHeight>1</MatrixHeight>
+            </TileMatrix>
+        </TileMatrixSet>
+    </Contents>
+    <ServiceMetadataURL xlink:href="http://www.opengis.uab.es/SITiled/world/1.0.0/WMTSCapabilities.xml"/>
+</Capabilities>
+--></div>
+<div id="arcgis"><!--
+<?xml version="1.0" encoding="UTF-8"?>
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd" version="1.0.0">
+    <ows:ServiceIdentification>
+        <ows:Title>WorldTimeZones</ows:Title>
+        <ows:ServiceType>OGC WMTS</ows:ServiceType>
+        <ows:ServiceTypeVersion>1.0.0</ows:ServiceTypeVersion>
+    </ows:ServiceIdentification>
+    <ows:OperationsMetadata>
+        <ows:Operation name="GetTile">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://sampleserver6.arcgisonline.com/arcgis/rest/services/WorldTimeZones/MapServer/WMTS/tile/1.0.0/">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>RESTful</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                    <ows:Get xlink:href="http://sampleserver6.arcgisonline.com/arcgis/rest/services/WorldTimeZones/MapServer/WMTS?">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>KVP</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+    </ows:OperationsMetadata>
+    <Contents>
+        <Layer>
+            <ows:Title>WorldTimeZones</ows:Title>
+            <ows:Identifier>WorldTimeZones</ows:Identifier>
+            <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::102100">
+                <ows:LowerCorner>-2.0037507067161843E7 -3.024097195838617E7</ows:LowerCorner>
+                <ows:UpperCorner>2.0037507067161843E7 3.0240971458386205E7</ows:UpperCorner>
+            </ows:BoundingBox>
+            <ows:WGS84BoundingBox crs="urn:ogc:def:crs:OGC:2:84">
+                <ows:LowerCorner>-179.99999550841463 -88.99999992161119</ows:LowerCorner>
+                <ows:UpperCorner>179.99999550841463 88.99999992161118</ows:UpperCorner>
+            </ows:WGS84BoundingBox>
+            <Style isDefault="true">
+                <ows:Title>Default Style</ows:Title>
+                <ows:Identifier>default</ows:Identifier>
+            </Style>
+            <Format>image/png</Format>
+            <TileMatrixSetLink>
+                <TileMatrixSet>GoogleMapsCompatible</TileMatrixSet>
+            </TileMatrixSetLink>
+            <ResourceURL format="image/png" resourceType="tile" template="http://sampleserver6.arcgisonline.com/arcgis/rest/services/WorldTimeZones/MapServer/WMTS/tile/1.0.0/WorldTimeZones/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png" />
+        </Layer>
+        <TileMatrixSet>
+            <ows:Title>GoogleMapsCompatible</ows:Title>
+            <ows:Abstract>the wellknown 'GoogleMapsCompatible' tile matrix set defined by OGC WMTS specification</ows:Abstract>
+            <ows:Identifier>GoogleMapsCompatible</ows:Identifier>
+            <ows:SupportedCRS>urn:ogc:def:crs:EPSG:6.18:3:3857</ows:SupportedCRS>
+            <WellKnownScaleSet>urn:ogc:def:wkss:OGC:1.0:GoogleMapsCompatible</WellKnownScaleSet>
+            <TileMatrix>
+                <ows:Identifier>5</ows:Identifier>
+                <ScaleDenominator>17471320.75089743</ScaleDenominator>
+                <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>32</MatrixWidth>
+                <MatrixHeight>32</MatrixHeight>
+            </TileMatrix>
+        </TileMatrixSet>
+    </Contents>
+    <ServiceMetadataURL xlink:href="http://sampleserver6.arcgisonline.com/arcgis/rest/services/WorldTimeZones/MapServer/WMTS/1.0.0/WMTSCapabilities.xml" />
+</Capabilities>
+--></div>
+
+<div id="multi-getile-2"><!--
+<?xml version="1.0" encoding="UTF-8"?>
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd" version="1.0.0">
+    <ows:OperationsMetadata>
+        <ows:Operation name="GetCapabilities">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/1.0.0/WMTSCapabilities.xml">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+        <ows:Operation name="GetTile">
+            <ows:DCP>
+                <ows:HTTP>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/kvp">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>KVP</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                    <ows:Get xlink:href="http://wmts.geo.admin.ch/rest">
+                        <ows:Constraint name="GetEncoding">
+                            <ows:AllowedValues>
+                                <ows:Value>REST</ows:Value>
+                            </ows:AllowedValues>
+                        </ows:Constraint>
+                    </ows:Get>
+                </ows:HTTP>
+            </ows:DCP>
+        </ows:Operation>
+    </ows:OperationsMetadata>
+    <Contents>
+        <Layer>
+            <ows:Title>Agglomérations et villes isolées</ows:Title>
+            <ows:Abstract>Les agglomérations et villes isolées (communes non rattachées à une agglomération et comptant au moins 10`000 habitants) font partie des régions d’analyse de la statistique suisse. Ce niveau géographique est défini depuis plus de 100 ans, afin de mesurer l’urbanisation, phénomène fondamental structurant l’organisation du territoire. Sa fonction principale est de permettre une comparaison spatiale entre des espaces urbains inégalement délimités sur le plan instit [...]
+            <ows:WGS84BoundingBox>
+                <ows:LowerCorner>5.140242 45.398181</ows:LowerCorner>
+                <ows:UpperCorner>11.47757 48.230651</ows:UpperCorner>
+            </ows:WGS84BoundingBox>
+            <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+            <ows:Metadata xlink:href="http://www.swisstopo.admin.ch/SITiled/world/AdminBoundaries/metadata.htm"/>
+            <Style>
+                <ows:Title>Agglomérations et villes isolées</ows:Title>
+                <ows:Identifier>ch.are.agglomerationen_isolierte_staedte-2000</ows:Identifier>
+                <LegendURL format="image/png" xlink:href="http://api.geo.admin.ch/legend/ch.are.agglomerationen_isolierte_staedte-2000_fr.png" />
+            </Style>
+            <Format>image/png</Format>
+            <Dimension>
+                <ows:Identifier>Time</ows:Identifier>
+                <Default>20090101</Default>
+                <Value>20090101</Value>
+            </Dimension>
+            <TileMatrixSetLink>
+                <TileMatrixSet>21781</TileMatrixSet>
+            </TileMatrixSetLink>
+        </Layer>
+        <TileMatrixSet>
+            <ows:Identifier>21781</ows:Identifier>
+            <ows:SupportedCRS>urn:ogc:def:crs:EPSG:1.0:21781</ows:SupportedCRS>
+            <TileMatrix>
+                <ows:Identifier>0</ows:Identifier>
+                <ScaleDenominator>14285750.5715</ScaleDenominator>
+                <TopLeftCorner>420000.0 350000.0</TopLeftCorner>
+                <TileWidth>256</TileWidth>
+                <TileHeight>256</TileHeight>
+                <MatrixWidth>1</MatrixWidth>
+                <MatrixHeight>1</MatrixHeight>
+            </TileMatrix>
+        </TileMatrixSet>
+    </Contents>
+    <ServiceMetadataURL xlink:href="http://www.opengis.uab.es/SITiled/world/1.0.0/WMTSCapabilities.xml"/>
+</Capabilities>
+--></div>
+
 </body>
 </html>
diff --git a/tests/Format/WPSDescribeProcess.html b/tests/Format/WPSDescribeProcess.html
index c411f62..f52fd21 100644
--- a/tests/Format/WPSDescribeProcess.html
+++ b/tests/Format/WPSDescribeProcess.html
@@ -4,7 +4,7 @@
     <script type="text/javascript">
 
     function test_read_WPSDescribeProcess(t) {
-        t.plan(16);
+        t.plan(17);
 
         var parser = new OpenLayers.Format.WPSDescribeProcess();
         var text =
@@ -109,6 +109,13 @@
 '                    </Supported>' +
 '                </ComplexOutput>' +
 '            </Output>' +
+'            <Output>' +
+'                <ows:Identifier>literal</ows:Identifier>' +
+'                <ows:Title>literal output</ows:Title>' +
+'                <LiteralOutput>' +
+'                   <ows:DataType ows:reference="http://www.w3.org/TR/xmlschema-2/#integer">integer</ows:DataType>'+
+'                </LiteralOutput>' +
+'            </Output>' +
 '        </ProcessOutputs>' +
 '    </ProcessDescription>' +
 '</wps:ProcessDescriptions>';
@@ -135,6 +142,9 @@
         t.eq(result.complexOutput["supported"].formats["text/xml; subtype=gml/3.1.1"], true, "processOutputs supported format read correctly [1/2]");
         t.eq(result.complexOutput["supported"].formats["application/wkt"], true, "processOutputs supported format read correctly [1/2]");
 
+        var literalresult = buffer.processOutputs[1];
+        t.eq(literalresult.literalOutput.dataType, "integer", "processOutputs supported data type read corectly");
+
         text = '<?xml version="1.0" encoding="UTF-8"?>' +
 '<wps:ProcessDescriptions service="WPS" version="1.0.0" xmlns:wps="http://www.opengis.net/wps/1.0.0"' +
 '    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="en"' +
diff --git a/tests/Format/WPSExecute.html b/tests/Format/WPSExecute.html
index 112a66b..e820800 100644
--- a/tests/Format/WPSExecute.html
+++ b/tests/Format/WPSExecute.html
@@ -309,12 +309,12 @@
             responseForm: {
                 responseDocument: {
                     storeExecuteResponse: true,
-                    output: {
+                    outputs: [{
                         asReference: true,
                         identifier: 'BufferedPolygon',
                         title: 'Area serviced by playground.',
                         'abstract': 'Area within which most users of this playground will live.'
-                    }
+                    }]
                 }
             }
         });
@@ -349,6 +349,11 @@
 '				<ows:Title>Area serviced by playground.</ows:Title>' +
 '				<ows:Abstract>Area within which most users of this playground will live.</ows:Abstract>' +
 '			</wps:Output>' +
+'			<wps:Output>' +
+'				<ows:Identifier>literal</ows:Identifier>' +
+'                               <ows:Title/>' +
+'                               <ows:Abstract/>' +
+'			</wps:Output>' +
 '		</wps:ResponseDocument>' +
 '	</wps:ResponseForm>' +
 '</wps:Execute>';
@@ -381,12 +386,17 @@
                     storeExecuteResponse: true,
                     lineage: true,
                     status: true,
-                    output: {
-                        asReference: true,
-                        identifier: 'BufferedPolygon',
-                        title: 'Area serviced by playground.',
-                        'abstract': 'Area within which most users of this playground will live.'
-                    }
+                    outputs: [
+                        {
+                            asReference: true,
+                            identifier: 'BufferedPolygon',
+                            title: 'Area serviced by playground.',
+                            'abstract': 'Area within which most users of this playground will live.'
+                        },
+                        {
+                            identifier: 'literal'
+                        }
+                    ]
                 }
             }
         });
@@ -461,12 +471,12 @@
                 responseForm: {
                     responseDocument: {
                         storeExecuteResponse: true,
-                        output: {
+                        outputs: [{
                             asReference: true,
                             identifier: 'BufferedPolygon',
                             title: 'Area serviced by playground.',
                             'abstract': 'Area within which most users of this playground will live.'
-                        }
+                        }]
                     }
                 }
             });
diff --git a/tests/Format/XML.html b/tests/Format/XML.html
index ff663c3..d139506 100644
--- a/tests/Format/XML.html
+++ b/tests/Format/XML.html
@@ -166,6 +166,35 @@
              "node can be appended to a doc root");
     }
 
+    function test_createDocumentFragment(t) {
+        t.plan(3);
+
+        var format = new OpenLayers.Format.XML();
+        var uri = "http://foo.com";
+        var prefix = "foo";
+        var localName = "bar";
+        var qualifiedName = prefix + ":" + localName;
+        var parent = format.createElementNS(uri, qualifiedName);
+
+        var fragment = format.createDocumentFragment();
+        t.eq(fragment.nodeType, 11, "fragment type");
+
+        try {
+            fragment.appendChild(format.createTextNode("one"));
+            fragment.appendChild(format.createTextNode("two"));
+            t.eq(fragment.childNodes.length, 2, "fragment has two child nodes");
+        } catch (err) {
+            t.fail("trouble appending text nodes to fragment: " + err.message);
+        }
+
+        try {
+            parent.appendChild(fragment);
+            t.eq(parent.childNodes.length, 2, "parent has two child nodes");
+        } catch (err) {
+            t.fail("trouble appending fragment to parent: " + err.message);
+        }
+    }
+
     function test_Format_XML_createTextNode(t) {
         t.plan(10);
 
diff --git a/tests/Geometry.html b/tests/Geometry.html
index e61326d..2a4b4c4 100644
--- a/tests/Geometry.html
+++ b/tests/Geometry.html
@@ -11,7 +11,7 @@
         var g = new OpenLayers.Geometry();
         
         t.eq(g.CLASS_NAME, "OpenLayers.Geometry", "correct CLASS_NAME")
-        t.ok(OpenLayers.String.startsWith(g.id, "OpenLayers.Geometry_"),
+        t.ok(OpenLayers.String.startsWith(g.id, "OpenLayers_Geometry_"),
              "id correctly set");
     }
 
@@ -22,7 +22,7 @@
         var clone = geometry.clone();
 
         t.eq(clone.CLASS_NAME, "OpenLayers.Geometry", "correct CLASS_NAME")
-        t.ok(OpenLayers.String.startsWith(clone.id, "OpenLayers.Geometry_"),
+        t.ok(OpenLayers.String.startsWith(clone.id, "OpenLayers_Geometry_"),
              "id correctly set");
     }
 
@@ -257,24 +257,23 @@
 
         var cases = [{
             got: dist({x: 0, y: 0}, {x1: 0, y1: 1, x2: 1, y2: 1}),
-            expected: {distance: 1, x: 0, y: 1}
+            expected: {distance: 1, x: 0, y: 1, along: 0}
         }, {
             got: dist({x: 0, y: 0}, {x1: -1, y1: -1, x2: 0, y2: -1}),
-            expected: {distance: 1, x: 0, y: -1}
+            expected: {distance: 1, x: 0, y: -1, along: 1}
         }, {
             got: dist({x: 0, y: 0}, {x1: -1, y1: -1, x2: 1, y2: 1}),
-            expected: {distance: 0, x: 0, y: 0}
+            expected: {distance: 0, x: 0, y: 0, along: 0.5}
         }, {
             got: dist({x: 1, y: 1}, {x1: 2, y1: 0, x2: 2, y2: 3}),
-            expected: {distance: 1, x: 2, y: 1}
+            expected: {distance: 1, x: 2, y: 1, along: 1/3.}
         }, {
             got: dist({x: -1, y: -1}, {x1: -2, y1: -2, x2: -1, y2: -3}),
-            expected: {distance: Math.sqrt(2), x: -2, y: -2}
+            expected: {distance: Math.sqrt(2), x: -2, y: -2, along: 0}
         }, {
             got: dist({x: -1, y: 1}, {x1: -3, y1: 1, x2: -1, y2: 3}),
-            expected: {distance: Math.sqrt(2), x: -2, y: 2}
+            expected: {distance: Math.sqrt(2), x: -2, y: 2, along: 0.5}
         }];
-        
         t.plan(cases.length);
         for(var i=0; i<cases.length; ++i) {
             t.eq(cases[i].got, cases[i].expected, "case " + i);
diff --git a/tests/Geometry/Polygon.html b/tests/Geometry/Polygon.html
index 9f5cd95..0df0295 100644
--- a/tests/Geometry/Polygon.html
+++ b/tests/Geometry/Polygon.html
@@ -385,6 +385,32 @@
         t.ok(geodesicErr < planarErr, "geodesic measure is better (" + geodesicErr.toFixed(3) + " vs. " + planarErr.toFixed(3) + ")");
         
     }
+
+    function test_getCentroid(t) {
+        t.plan(5);
+        var bounds = new OpenLayers.Bounds(5, 10, 5, 10);
+        var geometry = bounds.toGeometry();
+        var centroid = geometry.getCentroid();
+        t.eq(geometry.components[0].components.length, 2, "only two vertices since the box has left=right and bottom=top");
+        t.ok(centroid && centroid.x === 5 && centroid.y === 10, "getCentroid returns a point geometry even if the ring of the polygon has only 2 vertices");
+        bounds = new OpenLayers.Bounds(123456789.0, 123456789.0, 123456789.1, 123456789.1);
+        geometry = bounds.toGeometry();
+        centroid = geometry.getCentroid();
+        t.eq(geometry.components[0].components.length, 5, "five vertices expected");
+        var dX = Math.abs(centroid.x - 123456789.05);
+        var dY = Math.abs(centroid.y - 123456789.05);
+        t.ok(centroid && dX < 0.0001 && dY < 0.0001, " getCentroid returns the correct point geometry dX = " + dX + ", dY = " + dY);
+        
+        var components = [
+            new OpenLayers.Geometry.Point(0,0), new OpenLayers.Geometry.Point(1,1),
+            new OpenLayers.Geometry.Point(0,1), new OpenLayers.Geometry.Point(1,0)];
+        var linearRing = new OpenLayers.Geometry.LinearRing(components);
+        polygon = new OpenLayers.Geometry.Polygon([linearRing.clone()]);
+        centroid = polygon.getCentroid();
+        var tX = centroid.x;
+        var tY = centroid.y;
+        t.ok( !isNaN(tX) && !isNaN(tY) && tX !== Infinity && tY !== Infinity, " getCentroid for wrong polygon works x = " + tX + ", y = " + tY);
+    }
     
 
   </script>
diff --git a/tests/Handler.html b/tests/Handler.html
index a20ffbb..eb266d7 100644
--- a/tests/Handler.html
+++ b/tests/Handler.html
@@ -123,7 +123,7 @@
     }
     
     function test_Handler_setEvent(t) {
-        t.plan(4);
+        t.plan(5);
         var map = new OpenLayers.Map('map');
         var control = new OpenLayers.Control();
         map.addControl(control);
@@ -135,7 +135,8 @@
             xy: new OpenLayers.Pixel(Math.random(), Math.random()),
             altKey: (Math.random() > 0.5),
             shiftKey: (Math.random() > 0.5),
-            ctrlKey: (Math.random() > 0.5)
+            ctrlKey: (Math.random() > 0.5),
+            metaKey: (Math.random() > 0.5)
         }
         map.events.triggerEvent("click", testEvent);
         t.ok(handler.evt.xy.x == testEvent.xy.x &&
@@ -147,6 +148,8 @@
              "handler.evt.shiftKey correct");
         t.eq(handler.evt.ctrlKey, testEvent.ctrlKey,
              "handler.evt.ctrlKey correct");
+        t.eq(handler.evt.metaKey, testEvent.metaKey,
+             "handler.evt.metaKey correct");
     }
     
     function test_Handler_destroy(t) {
@@ -173,7 +176,7 @@
     }
     
     function test_Handler_checkModifiers(t) {
-        t.plan(26);
+        t.plan(62);
         var handler = new OpenLayers.Handler({});
         handler.keyMask = null;
         var proceed = handler.checkModifiers({});
@@ -192,7 +195,8 @@
             MOD_NONE: null,
             MOD_SHIFT: "shiftKey",
             MOD_CTRL: "ctrlKey",
-            MOD_ALT: "altKey"
+            MOD_ALT: "altKey",
+            MOD_META: "metaKey"
         }
         var proceed, evt, value, c, k;
         for(c in constants) {
@@ -220,8 +224,8 @@
          *     is OpenLayers.Handler.MOD_SHIFT, checkModifiers should return
          *     true.
          */
-        var constants = ["MOD_SHIFT", "MOD_CTRL", "MOD_ALT"];
-        var keys = ["shiftKey", "ctrlKey", "altKey"];
+        var constants = ["MOD_SHIFT", "MOD_CTRL", "MOD_ALT", "MOD_META"];
+        var keys = ["shiftKey", "ctrlKey", "altKey", "metaKey"];
         var proceed, evt, c1, c2, k1, k2;
         for(var i=0; i<constants.length-1; ++i) {
             c1 = constants[i];
diff --git a/tests/Handler/Click.html b/tests/Handler/Click.html
index 41172cd..be508ca 100644
--- a/tests/Handler/Click.html
+++ b/tests/Handler/Click.html
@@ -669,6 +669,64 @@
         map.destroy();
     }
 
+    function test_touchstart(t) {
+        // a test to verify that the touchstart function does
+        // unregister the mouse listeners when it's called the
+        // first time
+
+        t.plan(7);
+
+        // set up
+
+        var map = new OpenLayers.Map("map", {
+            controls: []
+        });
+        var control = new OpenLayers.Control({});
+        var handler = new OpenLayers.Handler.Click(control, {});
+        control.handler = handler;
+        map.addControl(control);
+        handler.activate();
+
+        function allRegistered() {
+            var eventTypes = ['mousedown', 'mouseup', 'click', 'dblclick'],
+                eventType,
+                listeners,
+                listener,
+                flag;
+            for(var i=0, ilen=eventTypes.length; i<ilen; i++) {
+                flag =  false;
+                eventType = eventTypes[i];
+                listeners = map.events.listeners[eventType];
+                for(var j=0, jlen=listeners.length; j<jlen; j++) {
+                    listener = listeners[j];
+                    if(listener.func === handler[eventType] && listener.obj === handler) {
+                        flag = true;
+                        break;
+                    }
+                }
+                if(!flag) {
+                    return false;
+                }
+            }
+            return true;
+        }
+
+        // test
+
+        t.ok(allRegistered(), 'mouse listeners are registered');
+        handler.touchstart({xy: new OpenLayers.Pixel(0, 0)});
+        t.eq(map.events.listeners.mousedown.length, 0,"mousedown is not registered");
+        t.eq(map.events.listeners.mouseup.length, 0,"mouseup is not registered");
+        t.eq(map.events.listeners.click.length, 0,"click is not registered");
+        t.eq(map.events.listeners.dblclick.length, 0,"dblclick is not registered");
+
+        t.ok(handler.touch, 'handler.touch is set');
+
+        handler.deactivate();
+        t.ok(!handler.touch, 'handler.touch is not set');
+
+        map.destroy();
+    }
   </script>
 </head>
 <body>
diff --git a/tests/Handler/Drag.html b/tests/Handler/Drag.html
index 4be1df9..fa9a3b2 100644
--- a/tests/Handler/Drag.html
+++ b/tests/Handler/Drag.html
@@ -117,7 +117,7 @@
         handler.activate();
         
         var oldIsLeftClick = OpenLayers.Event.isLeftClick;
-        var oldStop = OpenLayers.Event.stop;
+        var oldPreventDefault = OpenLayers.Event.preventDefault;
         var oldCheckModifiers = handler.checkModifiers;
 
         // test mousedown with right click
@@ -163,15 +163,9 @@
                  "mousedown calls isLeftClick with the proper event");
             return true;
         }
-        OpenLayers.Event.stop = function(evt, allowDefault) {
-            if(!allowDefault) {
-                t.ok(evt.xy.x == testEvents.down.xy.x &&
-                     evt.xy.y == testEvents.down.xy.y,
-                     "mousedown default action is disabled");
-            } else {
-                t.fail(
-                     "mousedown is prevented from falling to other elements");
-            }
+        OpenLayers.Event.preventDefault = function(evt) {
+            t.ok(evt.xy.x == testEvents.down.xy.x && evt.xy.y == testEvents.down.xy.y,
+                 "mousedown default action is disabled");
         }
         map.events.triggerEvent("mousedown", testEvents.down);
         t.ok(handler.started, "mousedown sets the started flag to true");
@@ -183,7 +177,7 @@
              handler.last.y == testEvents.down.xy.y,
              "mouse down sets handler.last correctly");
         
-        OpenLayers.Event.stop = oldStop;        
+        OpenLayers.Event.preventDefault = oldPreventDefault;
         OpenLayers.Event.isLeftClick = oldIsLeftClick;
         handler.checkModifiers = oldCheckModifiers;
 
@@ -292,9 +286,9 @@
     function test_Handler_Drag_touch(t) {
         // In this test we verify that "touchstart", "touchmove", and
         // "touchend" events set expected states in the drag handler.
-        // We also verify that we stop event bubbling as appropriate.
+        // We also verify that we prevent the default as appropriate.
 
-        t.plan(14);
+        t.plan(19);
 
         // set up
 
@@ -308,8 +302,8 @@
         });
         h.activate();
 
-        var _stop = OpenLayers.Event.stop;
-        OpenLayers.Event.stop = function(e) {
+        var _preventDefault = OpenLayers.Event.preventDefault;
+        OpenLayers.Event.preventDefault = function(e) {
             log.push(e);
         };
 
@@ -324,6 +318,11 @@
         t.eq(h.start.y, 0, '[touchstart] start.y is correct');
         t.eq(log.length, 1, '[touchstart] one item in log');
         t.ok(log[0] === e, "touchstart", '[touchstart] event is stopped');
+        t.eq(m.events.listeners.mousedown.length, 0,"mousedown is not registered");
+        t.eq(m.events.listeners.mouseup.length, 0,"mouseup is not registered");
+        t.eq(m.events.listeners.mousemove.length, 0,"mousemove is not registered");
+        t.eq(m.events.listeners.click.length, 0,"click is not registered");
+        t.eq(m.events.listeners.mouseout.length, 0,"mouseout is not registered");
 
         e = {xy: new Px(1, 1)};
         m.events.triggerEvent('touchmove', e);
@@ -343,7 +342,7 @@
 
         // tear down
 
-        OpenLayers.Event.stop = _stop;
+        OpenLayers.Event.preventDefault = _preventDefault;
         m.destroy();
     }
 
diff --git a/tests/Handler/Feature.html b/tests/Handler/Feature.html
index 7c768e1..4a78e14 100644
--- a/tests/Handler/Feature.html
+++ b/tests/Handler/Feature.html
@@ -280,9 +280,10 @@
         handler.mousedown = function() {}; // mock mousedown
         handler.activate();
 
+        var eventTypes = ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick'];
+
         function allRegistered() {
-            var eventTypes = ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick'],
-                eventType,
+            var eventType,
                 listeners,
                 listener,
                 flag;
@@ -305,21 +306,18 @@
         }
 
         function noneRegistered() {
-            var eventTypes = ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick'],
-                eventType,
-                listeners,
-                listener;
+            var eventType,
+                times,
+                flag = false;
             for(var i=0, ilen=eventTypes.length; i<ilen; i++) {
                 eventType = eventTypes[i];
-                listeners = map.events.listeners[eventType];
-                for(var j=0, jlen=listeners.length; j<jlen; j++) {
-                    listener = listeners[j];
-                    if(listener.func === handler[eventType] && listener.obj === handler) {
-                        return false;
-                    }
+                times = map.events.listeners[eventType].length;
+                if (times != 0) {
+                    t.fail(eventType + " is registered " + times + " times");
+                    flag = true;
                 }
             }
-            return true;
+            return !flag;
         }
 
         // test
@@ -564,10 +562,10 @@
         handler = new OpenLayers.Handler.Feature(
             control, layer, callbacks, {clickTolerance: 4});
         handler.activate();
-        handler.down = {x: 0, y: 0};
 
         // distance between down and up is 1, which is
         // lower than clickTolerance so "click" should trigger
+        handler.down = {x: 0, y: 0};
         handler.up = {x: 1, y: 0};
         clicks = 0;
         map.events.triggerEvent("click", evtPx);
@@ -575,6 +573,7 @@
 
         // distance between down and up is 4, which is
         // equal to clickTolerance so "click" should trigger
+        handler.down = {x: 0, y: 0}; // cached handler.down cleared (#857)
         handler.up = {x: 0, y: 4};
         clicks = 0;
         map.events.triggerEvent("click", evtPx);
@@ -582,6 +581,7 @@
 
         // distance between down and up is 5, which is
         // greater than clickTolerance so "click" should not trigger
+        handler.down = {x: 0, y: 0}; // cached handler.down cleared (#857)
         handler.up = {x: 5, y: 0};
         clicks = 0;
         map.events.triggerEvent("click", evtPx);
@@ -660,6 +660,36 @@
         
     }
 
+    function test_clear_event_position_cache(t) {
+        t.plan(2);
+
+        var map, control, layer, feature, evtPx;
+
+        map = new OpenLayers.Map('map', {controls: []});
+        control = new OpenLayers.Control();
+        map.addControl(control);
+        layer = new OpenLayers.Layer();
+        layer.getFeatureFromEvent = function(evt) { return feature; };
+        map.addLayer(layer);
+        feature = new OpenLayers.Feature.Vector();
+        feature.layer = layer;
+
+        evtPx = {
+            xy: new OpenLayers.Pixel(Math.random(), Math.random()),
+            type: "click"
+        };
+ 
+        handler = new OpenLayers.Handler.Feature(
+            control, layer, {}, {});
+        handler.activate();
+
+        handler.down = {x: 0, y: 0};
+        handler.up = {x: 1, y: 0};
+        map.events.triggerEvent("click", evtPx);
+        t.eq(handler.down, null, "cached mousedown position is cleared after handling click");
+        t.eq(handler.up, null, "cached mouseup position is cleared after handling click")
+    }
+
   </script>
 </head>
 <body>
diff --git a/tests/Handler/MouseWheel.html b/tests/Handler/MouseWheel.html
index d41c2cd..687a31d 100644
--- a/tests/Handler/MouseWheel.html
+++ b/tests/Handler/MouseWheel.html
@@ -56,7 +56,6 @@
         handler.setMap(map);
         handler.activate();
         var delta = 120;
-        if (window.opera && window.opera.version() < 9.2)  delta = -delta;
         handler.onWheelEvent({'target':map.layers[0].div, wheelDelta: delta});
         t.ok(pass, "evt.xy was set even without a mouse move");
     }    
@@ -108,7 +107,6 @@
         var activated = handler.activate();
         
         var delta = 120;
-        if (window.opera && window.opera.version() < 9.2)  delta = -delta;
         handler.onWheelEvent({'target':map.layers[0].div, wheelDelta: delta});
         handler.onWheelEvent({'target':map.layers[0].div, wheelDelta: delta});
         t.delay_call(1, function() {
@@ -117,12 +115,13 @@
     }
 
     function test_Handler_MouseWheel_cumulative(t) {
-        t.plan(1);
+        t.plan(2);
 
-        var deltaUp = 0;
+        var deltaUp = 0, ticks = 0;
         var callbacks = {
             up: function(evt, delta) {
                 deltaUp += delta;
+                ticks++;
             }
         };
 
@@ -133,18 +132,19 @@
         map.addControl(control);
         var handler = new OpenLayers.Handler.MouseWheel(control, callbacks, {
             interval: 150,
-            cumulative: false    
+            cumulative: false,
+            maxDelta: 6
         });
 
         var delta = 120;
         // generate 20 scroll up in non cumulative mode
-        if (window.opera && window.opera.version() < 9.2)  delta = -delta;
         for (var i=0; i < 20; i++) {
             handler.onWheelEvent({'target':map.layers[0].div, wheelDelta: delta});
         }
         
-        t.delay_call(1, function() {
-            t.eq(deltaUp, 1, "Non cumulative mode works");
+        t.delay_call(2, function() {
+            t.eq(deltaUp / ticks, 1, "Cumulative mode works");
+            t.eq(ticks, 4, "up called 4x with maxDelta of 6");
         });
     }
 
diff --git a/tests/Handler/Path.html b/tests/Handler/Path.html
index 66548d6..8351eea 100644
--- a/tests/Handler/Path.html
+++ b/tests/Handler/Path.html
@@ -601,6 +601,12 @@
         handler.mousedown({type: "mousedown", xy: px});
         handler.mouseup({type: "mouseup", xy: px});
     }
+    function userTap(handler, x, y) {
+        var px = new OpenLayers.Pixel(x, y);
+        handler.touchstart({xy: px});
+        handler.touchmove({xy: px});
+        handler.touchend({});
+    }
 
     /**
      * Editing method tests: insertXY, insertDeltaXY, insertDirectionXY,
@@ -720,7 +726,7 @@
     }
 
     function test_undoredo1(t) {
-        t.plan(4);
+        t.plan(5);
         var obj = editingMethodsSetup();
         var map = obj.map;
         var handler = obj.handler;
@@ -747,6 +753,17 @@
         handler.redo();
         t.geom_eq(original, handler.line.geometry, "one redo undoes one undo");
         
+        // add point via touch
+        userTap(handler, 10, 50);
+        handler.undo();
+        currentLen = handler.line.geometry.components.length;
+        t.geom_eq(
+            handler.line.geometry.components[currentLen-1],
+            handler.line.geometry.components[currentLen-2],
+            "current point (mouse position) is set to the last digitized " + 
+            "point after undo on touch devices"
+        );
+        
         // cleanup
         map.destroy();
     }
diff --git a/tests/Handler/Pinch.html b/tests/Handler/Pinch.html
index 2924e22..c4883df 100644
--- a/tests/Handler/Pinch.html
+++ b/tests/Handler/Pinch.html
@@ -95,9 +95,9 @@
     }
 
     function test_callbacks(t) {
-        t.plan(23);
+        t.plan(32);
 
-        var map = new OpenLayers.Map('map', {controls: []});
+        var map = new OpenLayers.Map('map', {controls: [], fallThrough: true});
 
         var control = new OpenLayers.Control();
         map.addControl(control);
@@ -105,7 +105,7 @@
         // set fake values for touches
         var testEvents = {
             start: {
-                type: 'start',
+                type: 'touchstart',
                 touches: [{
                     clientX: 100,
                     clientY: 0
@@ -115,7 +115,7 @@
                 }]
             },
             move: {
-                type: 'move',
+                type: 'touchmove',
                 touches: [{
                     clientX: 100,
                     clientY: 0
@@ -125,7 +125,7 @@
                 }]
             },
             done: {
-                type: 'done',
+                type: 'touchend',
                 touches: []
             }
         };
@@ -133,7 +133,8 @@
         // set callback methods
         var customCb = OpenLayers.Function.False;
         var cb = function(evt) {
-            var tch = testEvents[evt.type].touches;
+            var callback = evt.type.replace("touch", "").replace("end", "done");;
+            var tch = testEvents[callback].touches;
             t.ok(evt.touches[0].clientX == tch[0].clientX &&
                 evt.touches[0].clientY == tch[0].clientY,
                 "touchstart sets first touch position correctly in evt");
@@ -147,7 +148,9 @@
         var callbacks = {
             start: cb,
             move: cb,
-            done: customCb
+            done: function () {
+                customCb.apply(this, arguments);
+            }
         };
 
         var handler = new OpenLayers.Handler.Pinch(control, callbacks);
@@ -160,6 +163,14 @@
         OpenLayers.Event.isMultiTouch = function() {
             return false;
         }
+        
+        // no callbacks with tests expected (pinch not started)
+        map.events.handleBrowserEvent(testEvents.start);
+        // test 1, 2, 3
+        t.ok(!handler.started, "1) touchstart (singletouch) sets started to false");
+        t.eq(handler.start, null, "1) touchstart (singletouch) sets start to null");
+        t.eq(handler.last, null, "1) touchstart (singletouch) sets last to null");
+        
         handler.started = true;
         handler.start = {
             distance: 100,
@@ -171,10 +182,13 @@
             delta: 10,
             scale: 1.5
         };
-        map.events.triggerEvent("touchstart", testEvents.start);
-        t.ok(!handler.started, "1) touchstart (singletouch) sets started to false");
-        t.eq(handler.start, null, "1) touchstart (singletouch) sets start to null");
-        t.eq(handler.last, null, "1) touchstart (singletouch) sets last to null");
+        
+        // no callbacks with tests expected (multitouch pinch started, so ignores singletouch)
+        map.events.handleBrowserEvent(testEvents.start);
+        // test 4, 5, 6
+        t.ok(handler.started, "1) touchstart (singletouch) after pinch started is ignored");
+        t.ok(!!handler.start, "1) touchstart (singletouch) after pinch started is ignored");
+        t.ok(!!handler.last, "1) touchstart (singletouch) after pinch started is ignored");
 
         OpenLayers.Event.stop = function(evt, allowDefault) {
             if(allowDefault) {
@@ -192,7 +206,9 @@
             t.eq(pinchdata.delta, 0, "2) calculated delta is correct");
             t.eq(pinchdata.scale, 1, "2) calculated scale is correct");
         }
-        map.events.triggerEvent("touchstart", testEvents.start);
+        // test 7, 8, 9, 10, 11, 12, 13
+        map.events.handleBrowserEvent(testEvents.start);
+        // test 14, 15
         t.ok(handler.started, "2) touchstart sets the started flag to true");
         t.ok(!handler.pinching, "2) touchstart sets the pinching flag to false");
 
@@ -201,11 +217,14 @@
             t.eq(pinchdata.delta, 20, "3) calculated delta is correct");
             t.eq(pinchdata.scale, 0.8, "3) calculated scale is correct");
         }
-        map.events.triggerEvent("touchmove", testEvents.move);
+        // test 16, 17, 18, 19, 20, 21, 22
+        map.events.handleBrowserEvent(testEvents.move);
+        // test 23, 24
         t.ok(handler.started, "3) started flag still set to true");
         t.ok(handler.pinching, "3) touchmove sets the pinching flag to true");
 
-
+        OpenLayers.Event.isMultiTouch = old_isMultiTouch;
+        
         customCb = function(evt, first, last) {
             t.eq(first.distance, 100, "4) calculated distance is correct");
             t.eq(first.delta, 0, "4) calculated delta is correct");
@@ -214,19 +233,21 @@
             t.eq(last.delta, 20, "4) calculated delta is correct");
             t.eq(last.scale, 0.8, "4) calculated scale is correct");
         }
-        map.events.triggerEvent("touchend", testEvents.done);
+        // test 25, 26, 27, 28, 29, 30
+        map.events.handleBrowserEvent(testEvents.done);
+        // test 31, 32
         t.ok(!handler.started, "4) started flag is set to false");
         t.ok(!handler.pinching, "4) touchdone sets the pinching flag to false");
 
         OpenLayers.Event.stop = old_stop;
-        OpenLayers.Event.isMultiTouch = old_isMultiTouch;
 
         // test move or done before start
         customCb = function(evt) {
             t.fail("should not pass here")
         }
-        map.events.triggerEvent("touchmove", testEvents.move);
-        map.events.triggerEvent("touchend", testEvents.end);
+        // no callbacks with tests expected
+        map.events.handleBrowserEvent(testEvents.move);
+        map.events.handleBrowserEvent(testEvents.done);
 
     }
 
diff --git a/tests/Handler/Point.html b/tests/Handler/Point.html
index 4214478..b5a7cf3 100644
--- a/tests/Handler/Point.html
+++ b/tests/Handler/Point.html
@@ -407,7 +407,8 @@
         // set up
 
         var map = new OpenLayers.Map("map", {
-            resolutions: [1]
+            resolutions: [1],
+            controls: []
         });
         var layer = new OpenLayers.Layer.Vector("foo", {
             maxExtent: new OpenLayers.Bounds(-10, -10, 10, 10),
@@ -421,9 +422,11 @@
         map.setCenter(new OpenLayers.LonLat(0, 0), 0);
         handler.activate();
 
+        var eventTypes = ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick',
+                'mouseout'];
+
         function allRegistered() {
-            var eventTypes = ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick'],
-                eventType,
+            var eventType,
                 listeners,
                 listener,
                 flag;
@@ -446,23 +449,21 @@
         }
 
         function noneRegistered() {
-            var eventTypes = ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick'],
-                eventType,
-                listeners,
-                listener;
+            var eventType,
+                times,
+                flag = false;
             for(var i=0, ilen=eventTypes.length; i<ilen; i++) {
                 eventType = eventTypes[i];
-                listeners = map.events.listeners[eventType];
-                for(var j=0, jlen=listeners.length; j<jlen; j++) {
-                    listener = listeners[j];
-                    if(listener.func === handler[eventType] && listener.obj === handler) {
-                        return false;
-                    }
+                times = map.events.listeners[eventType].length;
+                if (times != 0) {
+                    t.fail(eventType + " is registered " + times + " times");
+                    flag = true;
                 }
             }
-            return true;
+            return !flag;
         }
 
+
         // test
 
         t.ok(allRegistered(), 'mouse listeners are registered');
diff --git a/tests/Layer.html b/tests/Layer.html
index b732de9..954a363 100644
--- a/tests/Layer.html
+++ b/tests/Layer.html
@@ -174,6 +174,16 @@
         t.eq(log, 0, "addOptions doesn't call initResolutions when layer is not in map");
     }
     
+    function test_addOptionsScale(t) {
+        t.plan(1);
+        var map = new OpenLayers.Map("map");
+        var layer = new OpenLayers.Layer.WMS();
+        map.addLayer(layer);
+        map.zoomToMaxExtent();
+        layer.addOptions({maxResolution: 0.5, numZoomLevels: 15});
+        t.eq(layer.alwaysInRange, false, "alwaysInRange should not be true anymore");
+    }
+    
     function test_Layer_StandardOptionsAccessors (t) {
 
         t.plan( 4 );
@@ -390,13 +400,13 @@
             [0.0012699126752168362, 0.0006349563376084181, 0.00031747816880420905], 0.00031747816880420905, 0.0012699126752168362
         ], [
             "1.18",  null, {scales: [400000, 200000, 100000], units: "m"},
-            [141.11103491115225, 70.55551745557612, 35.27775872778806], 35.27775872778806, 141.11103491115225
+            [141.11139333389778, 70.55569666694889, 35.277848333474445], 35.277848333474445, 141.11139333389778
         ], [
             "1.19",  null, {minScale: 400000, numZoomLevels: 3, units: "m"},
-            [141.11103491115225, 70.55551745557612, 35.27775872778806], 35.27775872778806, 141.11103491115225
+            [141.11139333389778, 70.55569666694889, 35.277848333474445], 35.277848333474445, 141.11139333389778
         ], [
             "1.20",  null, {maxScale: 100000, numZoomLevels: 3, units: "m"},
-            [141.11103491115225, 70.55551745557612, 35.27775872778806], 35.27775872778806, 141.11103491115225
+            [141.11139333389778, 70.55569666694889, 35.277848333474445], 35.277848333474445, 141.11139333389778
         ], [
             "1.21", null, {numZoomLevels: 2},  // maxResolution calculated based on the projection's maxExtent here
            [1.40625, 0.703125], 0.703125, 1.40625
@@ -509,7 +519,7 @@
             [0.0012699126752168362, 0.0006349563376084181, 0.00031747816880420905], 0.00031747816880420905, 0.0012699126752168362
         ], [
             "2.5.4",  {units: "m"}, {scales: [400000, 200000, 100000]},
-            [141.11103491115225, 70.55551745557612, 35.27775872778806], 35.27775872778806, 141.11103491115225
+            [141.11139333389778, 70.55569666694889, 35.277848333474445], 35.277848333474445, 141.11139333389778
         ], [
         /*
          * Batch 2.6: minScale set in the layer options
diff --git a/tests/Layer/ArcGIS93Rest.html b/tests/Layer/ArcGIS93Rest.html
index 0e11ad7..ddca6ac 100644
--- a/tests/Layer/ArcGIS93Rest.html
+++ b/tests/Layer/ArcGIS93Rest.html
@@ -4,9 +4,6 @@
     <script type="text/javascript">window.alert = oldAlert;</script>
 <script src="../OLLoader.js"></script>
   <script type="text/javascript">
-    // turn off animation frame handling, so we can check img urls in tests
-    delete OpenLayers.Layer.Grid.prototype.queueTileDraw;
-    
     var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
     var layer; 
 
@@ -63,7 +60,7 @@
         t.plan( 6 );
     
         layer = new OpenLayers.Layer.ArcGIS93Rest(name, url, params);
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         map.addLayer(layer);
         var pixel = new OpenLayers.Pixel(5,6);
         var tile = layer.addTile(new OpenLayers.Bounds(1,2,3,4), pixel);
@@ -78,8 +75,8 @@
         t.eq( tile.url,
              url + "?" + OpenLayers.Util.getParameterString(tParams),
              "image src is created correctly via addtile" );
-        t.eq( tile.getTile().style.top, "6%", "image top is set correctly via addtile" );
-        t.eq( tile.getTile().style.left, "5%", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.top, "6px", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.left, "5px", "image top is set correctly via addtile" );
 
         var firstChild = layer.div.firstChild;
         t.eq( firstChild.nodeName.toLowerCase(), "img", "div first child is an image object" );
@@ -95,8 +92,8 @@
         layer = new OpenLayers.Layer.ArcGIS93Rest(name, url, params, {buffer: 2});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0),5);
-        t.eq( layer.grid.length, 7, "Grid rows is correct." );
-        t.eq( layer.grid[0].length, 6, "Grid cols is correct." );
+        t.eq( layer.grid.length, 8, "Grid rows is correct." );
+        t.eq( layer.grid[0].length, 7, "Grid cols is correct." );
         map.destroy();
     }
 
@@ -261,7 +258,7 @@
         t.plan( 9 );
     
         layer = new OpenLayers.Layer.ArcGIS93Rest(name, url, params);
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         map.addLayer(layer);
         var pixel = new OpenLayers.Pixel(5,6);
         var tile = layer.addTile(new OpenLayers.Bounds(1,2,3,4), pixel);
diff --git a/tests/Layer/ArcGISCache.html b/tests/Layer/ArcGISCache.html
index 0b54464..b5ed5d5 100644
--- a/tests/Layer/ArcGISCache.html
+++ b/tests/Layer/ArcGISCache.html
@@ -187,7 +187,9 @@
     }
         
     /**
-     * Check our utility function for generating tile indexes against a file cache
+     * Check the utility function for generating tile indexes against a file cache
+     * This is already tested in BaseTypes test, but these are specific,
+     * common conversions that this class will rely on, so the tests are retained
      */
     function test_Layer_ARCGISCACHE_zeroPad(t) {
         t.plan(4);
@@ -195,10 +197,10 @@
         var layer = new OpenLayers.Layer.ArcGISCache('test', null, { });
 
         //some tile examples
-        t.ok('00000001' == layer.zeroPad(1, 8, 16), 'zeroPad should generate tile indexes properly ');
-        t.ok('00000020' == layer.zeroPad(32, 8, 16), 'zeroPad should generate tile indexes properly ');
-        t.ok('00000100' == layer.zeroPad(256, 8, 16), 'zeroPad should generate tile indexes properly ');
-        t.ok('00001000' == layer.zeroPad(4096, 8, 16), 'zeroPad should generate tile indexes properly ');        
+        t.ok('00000001' == OpenLayers.Number.zeroPad(1, 8, 16), 'zeroPad should generate tile indexes properly ');
+        t.ok('00000020' == OpenLayers.Number.zeroPad(32, 8, 16), 'zeroPad should generate tile indexes properly ');
+        t.ok('00000100' == OpenLayers.Number.zeroPad(256, 8, 16), 'zeroPad should generate tile indexes properly ');
+        t.ok('00001000' == OpenLayers.Number.zeroPad(4096, 8, 16), 'zeroPad should generate tile indexes properly ');        
     }
     
     /**
diff --git a/tests/Layer/Bing.html b/tests/Layer/Bing.html
index a55d2eb..89bbba7 100644
--- a/tests/Layer/Bing.html
+++ b/tests/Layer/Bing.html
@@ -82,6 +82,25 @@
         });
     }
     
+    function test_initLayer_notempty(t) {
+        t.plan(1);
+        
+        map = new OpenLayers.Map("map", {
+            projection: "EPSG:3857",
+            layers: [new OpenLayers.Layer("dummy", {isBaseLayer: true})]
+        });
+        map.zoomToExtent([-14768652, 4492113, -12263964, 5744457]);
+        var layer = new OpenLayers.Layer.Bing(OpenLayers.Util.extend({
+            isBaseLayer: false
+        }, options));
+        map.addLayer(layer);
+        
+        t.delay_call(5, function() {
+            t.ok(layer.grid[0][0].url, "Tile not empty");
+            map.destroy();
+        });
+    }
+    
     function test_attribution(t) {
         t.plan(3);
         
@@ -92,9 +111,9 @@
         map.zoomToMaxExtent();
         
         t.delay_call(2, function() {
-            t.ok(layer.attribution.indexOf('olBingAttribution aerial') !== -1, "Attribution has the correct css class");
-            t.ok(layer.attribution.indexOf('<img src="">') == -1, "Attribution contains a logo");
-            t.ok(layer.attribution.indexOf('</img></div></a><a style=') == -1 , "Attribution contains a copyright");
+            t.ok(OpenLayers.Util.indexOf(layer.attribution, 'olBingAttribution aerial') !== -1, "Attribution has the correct css class");
+            t.ok(OpenLayers.Util.indexOf(layer.attribution, '<img src="">') == -1, "Attribution contains a logo");
+            t.ok(OpenLayers.Util.indexOf(layer.attribution, '</img></div></a><a style=') == -1 , "Attribution contains a copyright");
             map.destroy();
         });
     }
@@ -144,6 +163,35 @@
         t.ok(clone instanceof OpenLayers.Layer.Bing, "clone is a Layer.Bing instance");
     }
 
+    function test_protocol(t)
+    {
+        t.plan(5);
+
+        var map = new OpenLayers.Map("map");
+        layer = new OpenLayers.Layer.Bing(options);
+        map.addLayer(layer);
+        map.zoomToMaxExtent();
+        
+        t.delay_call(5, function() {
+            t.ok(OpenLayers.Util.indexOf(layer.attribution, '<img src="//') != -1, "Attribution contains a logo with protocol //");
+            t.ok(OpenLayers.Util.indexOf(layer.attribution, '<img src="http://') == -1, "Attribution logo does not have http:// protocol");
+            t.ok(layer.grid[1][1].url.indexOf('http:') == -1, "Tile url does not contain http:");
+
+            map.destroy();
+        });
+
+        var map2 = new OpenLayers.Map("map");
+        layer_https = new OpenLayers.Layer.Bing(OpenLayers.Util.applyDefaults({protocol: 'https:'}, options));
+        map2.addLayer(layer_https);
+        map2.zoomToMaxExtent();
+
+        t.delay_call(5, function() {
+            t.ok(OpenLayers.Util.indexOf(layer_https.attribution, '<img src="https://') != -1, "Attribution logo has https:// protocol");
+            t.ok(layer_https.grid[1][1].url.indexOf('https:') == 0, "Tile url contains https:");
+            map2.destroy();
+        });
+    }
+
   </script>
 </head>
 <body>
diff --git a/tests/Layer/Google.html b/tests/Layer/Google.html
index 3b9b2cb..84f17c9 100644
--- a/tests/Layer/Google.html
+++ b/tests/Layer/Google.html
@@ -237,53 +237,57 @@
     }
     
     function test_setOpacity(t) {
+        if(validkey) {        
+            t.plan(6);
         
-        t.plan(6);
-        
-        var map = new OpenLayers.Map("map");
-        var gmap = new OpenLayers.Layer.Google(
-            "Google Streets", // the default
-            {numZoomLevels: 20}
-        );
-        var ghyb = new OpenLayers.Layer.Google(
-            "Google Hybrid",
-            {type: G_HYBRID_MAP, numZoomLevels: 20}
-        );
-        var gsat = new OpenLayers.Layer.Google(
-            "Google Satellite",
-            {type: G_SATELLITE_MAP, numZoomLevels: 22}
-        );
-        map.addLayers([gmap, ghyb, gsat]);
-        map.zoomToMaxExtent();
-        
-        var container = map.baseLayer.mapObject.getContainer();
-        var opacityCheck = function(opacity) {
-            var style = container.style;
-            var current = style.opacity === "" ? 1 : parseFloat(style.opacity);
-            if (style.filter && !style.opacity) {
-                current = Number(style.filter.replace(/alpha\(opacity=(.+?)\)/, "$1"));
-            }
-            return (current === opacity);
-        };
+            var map = new OpenLayers.Map("map");
+            var gmap = new OpenLayers.Layer.Google(
+                "Google Streets", // the default
+                {numZoomLevels: 20}
+            );
+            var ghyb = new OpenLayers.Layer.Google(
+                "Google Hybrid",
+                {type: G_HYBRID_MAP, numZoomLevels: 20}
+            );
+            var gsat = new OpenLayers.Layer.Google(
+                "Google Satellite",
+                {type: G_SATELLITE_MAP, numZoomLevels: 22}
+            );
+            map.addLayers([gmap, ghyb, gsat]);
+            map.zoomToMaxExtent();
         
-        gmap.setOpacity(0.5);
-        t.ok(opacityCheck(0.5), "container opacity set for visible layer");
+            var container = map.baseLayer.mapObject.getContainer();
+            var opacityCheck = function(opacity) {
+                var style = container.style;
+                var current = style.opacity === "" ? 1 : parseFloat(style.opacity);
+                if (style.filter && !style.opacity) {
+                    current = Number(style.filter.replace(/alpha\(opacity=(.+?)\)/, "$1"));
+                }
+                return (current === opacity);
+            };
         
-        ghyb.setOpacity(0.75);
-        t.ok(opacityCheck(0.5), "container opacity not changed if layer not visible");
-        map.setBaseLayer(ghyb);
-        t.ok(opacityCheck(0.75), "container opacity changed to 0.75 when layer becomes visible");
+            gmap.setOpacity(0.5);
+            t.ok(opacityCheck(0.5), "container opacity set for visible layer");
         
-        map.setBaseLayer(gsat);
-        t.ok(opacityCheck(1), "container opacity set to 1 by default");
-        gsat.setOpacity(0.25);
-        t.ok(opacityCheck(0.25), "container opacity changed to 0.25 for visible layer");
+            ghyb.setOpacity(0.75);
+            t.ok(opacityCheck(0.5), "container opacity not changed if layer not visible");
+            map.setBaseLayer(ghyb);
+            t.ok(opacityCheck(0.75), "container opacity changed to 0.75 when layer becomes visible");
         
-        map.setBaseLayer(gmap);
-        t.ok(opacityCheck(0.5), "container opacity set to layer opacity");
+            map.setBaseLayer(gsat);
+            t.ok(opacityCheck(1), "container opacity set to 1 by default");
+            gsat.setOpacity(0.25);
+            t.ok(opacityCheck(0.25), "container opacity changed to 0.25 for visible layer");
         
-        map.destroy();
+            map.setBaseLayer(gmap);
+            t.ok(opacityCheck(0.5), "container opacity set to layer opacity");
         
+            map.destroy();
+        } else {
+            t.plan(0);
+            t.debug_print("Google tests can't be run from " +
+                          window.location.host);
+        }        
     }
 
     function test_Layer_Google_setGMapVisibility(t) {
@@ -321,34 +325,39 @@
     }
     
     function test_sphericalMercator(t) {
-        
-        t.plan(4);
-        var map, layer;
 
-        map = new OpenLayers.Map("map");
-        layer = new OpenLayers.Layer.Google();
-        map.addLayer(layer);
-        t.ok(!layer.sphericalMercator, "sphericalMercator false by default");
-        t.eq(map.getProjection(), "EPSG:4326", "4326 by default without sphericalMercator");
-        map.destroy();
-        
-        map = new OpenLayers.Map("map");
-        layer = new OpenLayers.Layer.Google(null, {
-            sphericalMercator: true
-        });
-        map.addLayer(layer);
-        t.eq(map.getProjection(), "EPSG:900913", "900913 by default with sphericalMercator");
-        map.destroy();
+        if (validkey) {        
+            t.plan(4);
+            var map, layer;
 
-        map = new OpenLayers.Map("map");
-        layer = new OpenLayers.Layer.Google(null, {
-            sphericalMercator: true,
-            projection: "EPSG:102113"
-        });
-        map.addLayer(layer);
-        t.eq(map.getProjection(), "EPSG:102113", "custom code respected with sphericalMercator");
-        map.destroy();
+            map = new OpenLayers.Map("map");
+            layer = new OpenLayers.Layer.Google();
+            map.addLayer(layer);
+            t.ok(!layer.sphericalMercator, "sphericalMercator false by default");
+            t.eq(map.getProjection(), "EPSG:4326", "4326 by default without sphericalMercator");
+            map.destroy();
         
+            map = new OpenLayers.Map("map");
+            layer = new OpenLayers.Layer.Google(null, {
+                sphericalMercator: true
+            });
+            map.addLayer(layer);
+            t.eq(map.getProjection(), "EPSG:900913", "900913 by default with sphericalMercator");
+            map.destroy();
+
+            map = new OpenLayers.Map("map");
+            layer = new OpenLayers.Layer.Google(null, {
+                sphericalMercator: true,
+                projection: "EPSG:102113"
+            });
+            map.addLayer(layer);
+            t.eq(map.getProjection(), "EPSG:102113", "custom code respected with sphericalMercator");
+            map.destroy();
+        } else {
+            t.plan(0);
+            t.debug_print("Google tests can't be run from " +
+                          window.location.host);
+        }        
     }
     
 
diff --git a/tests/Layer/Google/v3.html b/tests/Layer/Google/v3.html
index a90f8f4..5f14b48 100644
--- a/tests/Layer/Google/v3.html
+++ b/tests/Layer/Google/v3.html
@@ -170,68 +170,6 @@
         t.eq(satellite.div.style.display, "block", "Satellite layer is visible.");
     }    
     
-    function test_Layer_Google_setGMapVisibility(t) {
-        t.plan(3);
-    
-        var map = new OpenLayers.Map('map');
-        var gmap = new OpenLayers.Layer.Google("Google Streets");
-        var dummy = new OpenLayers.Layer("Dummy", {isBaseLayer: true});
-        map.addLayers([dummy, gmap]);
-        map.zoomToMaxExtent();
-    
-        // In v3, the terms of use and powered by elements are not available 
-        // until the layer loads.  This can occur before the layer is visible,
-        // but we don't try to access these elements until after the layer is
-        // made visible for the first time.  
-        var cache = OpenLayers.Layer.Google.cache[map.id];
-        t.ok(!cache.termsOfUse, "termsOfUse is not yet cached");
-        t.ok(!cache.poweredBy, "poweredBy is not yet cached");
-
-        var called = 0;
-        var original = gmap.repositionMapElements;
-        gmap.repositionMapElements = function() {
-            ++called;
-            original.apply(gmap, arguments);
-        }
-
-        map.setBaseLayer(gmap);
-        t.delay_call(4, function() {
-            t.ok(called > 0, "repositionMapElements called");
-            map.destroy();
-        });            
-    }
-
-    function test_Layer_Google_setGMapVisibility_allOverlays(t) {
-         t.plan(3);
-     
-         var map = new OpenLayers.Map('map', {allOverlays: true});
-         var gmap = new OpenLayers.Layer.Google("Google Streets", {visibility: false});
-         var dummy = new OpenLayers.Layer("Dummy");
-         map.addLayers([gmap, dummy]);
-         map.zoomToMaxExtent();
-         
-         // In v3, the terms of use and powered by elements are not available 
-         // until the layer loads.  This can occur before the layer is visible,
-         // but we don't try to access these elements until after the layer is
-         // made visible for the first time.
-         var cache = OpenLayers.Layer.Google.cache[map.id];
-         t.ok(!cache.termsOfUse, "termsOfUse is not yet cached");
-         t.ok(!cache.poweredBy, "poweredBy is not yet cached");
-     
-         var called = 0;
-         var original = gmap.repositionMapElements;
-         gmap.repositionMapElements = function() {
-             ++called;
-             original.apply(gmap, arguments);
-         }    
-
-         gmap.setVisibility(true);
-         t.delay_call(2, function() {
-             t.ok(called > 0, "repositionMapElements called");
-             map.destroy();
-         });            
-     }
-
      function test_allOverlays_invisible(t) {
 
          t.plan(1);
@@ -319,10 +257,9 @@
          t.plan(2);
 
          var origPrecision = OpenLayers.Util.DEFAULT_PRECISION;
-         // GMaps v3 seems to use a default precision of 13, which is lower
-         // than what we use in OpenLayers.
+         // Our default precision is very high - millimeters should be enough.
          // See http://trac.osgeo.org/openlayers/ticket/3059
-         OpenLayers.Util.DEFAULT_PRECISION = 13;
+         OpenLayers.Util.DEFAULT_PRECISION = 12;
 
          var map = new OpenLayers.Map("map");
 
@@ -370,6 +307,28 @@
          
      }
      
+     function test_moveViewportDiv(t) {
+         t.plan(2);
+         
+         var map = new OpenLayers.Map('map', {
+             projection: 'EPSG:3857',
+             center: [0, 0],
+             zoom: 1
+         });
+         var gmap = new OpenLayers.Layer.Google();
+         map.addLayer(gmap);
+         
+         t.delay_call(4, function() {
+             t.ok(map.viewPortDiv.parentNode !== map.div, 'viewport moved inside GMaps');
+
+             var osm = new OpenLayers.Layer.OSM();
+             map.addLayer(osm);
+             map.setBaseLayer(osm);
+
+             t.ok(map.viewPortDiv.parentNode === map.div, 'viewport moved back');
+         });
+     }
+     
   </script>
 </head>
 <body>
diff --git a/tests/Layer/Grid.html b/tests/Layer/Grid.html
index 981ccb4..61670b9 100644
--- a/tests/Layer/Grid.html
+++ b/tests/Layer/Grid.html
@@ -2,9 +2,6 @@
 <head>
   <script src="../OLLoader.js"></script>
   <script type="text/javascript">
-    // turn off animation frame handling, so we can check img urls in tests
-    var origQueueTileDraw = OpenLayers.Layer.Grid.prototype.queueTileDraw;
-    delete OpenLayers.Layer.Grid.prototype.queueTileDraw;
 
     var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
     var layer; 
@@ -25,7 +22,7 @@
 
 
     function test_constructor (t) {
-        t.plan( 8 );
+        t.plan( 7 );
                        
         layer = new OpenLayers.Layer.Grid(name, url, params, null);
         t.ok( layer instanceof OpenLayers.Layer.Grid, "returns OpenLayers.Layer.Grid object" );
@@ -34,7 +31,6 @@
         t.eq( layer.numLoadingTiles, 0, "numLoadingTiles starts at 0");
         t.ok( layer.tileClass === OpenLayers.Tile.Image, "tileClass default is OpenLayers.Tile.Image");
         t.eq( layer.className, 'olLayerGrid', "className default is olLayerGrid");
-        t.eq( layer.removeBackBufferDelay, 2500, "removeBackBufferDelay default is 2500");
 
         var obj = {};
         var func = function() {};
@@ -52,7 +48,7 @@
 
     function test_setMap(t) {
         t.plan(1);
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         layer = new OpenLayers.Layer.Grid(name, url, params, null);
         map.addLayer(layer);
         t.ok(OpenLayers.Element.hasClass(layer.div, "olLayerGrid"),
@@ -76,8 +72,8 @@
         layer = new OpenLayers.Layer.WMS(name, url, params, {buffer:2});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0),5);
-        t.eq( layer.grid.length, 7, "Grid rows is correct." );
-        t.eq( layer.grid[0].length, 6, "Grid cols is correct." );
+        t.eq( layer.grid.length, 8, "Grid rows is correct." );
+        t.eq( layer.grid[0].length, 7, "Grid cols is correct." );
         
     }
 
@@ -100,26 +96,6 @@
         map.destroy();
     }
     
-    function test_queueTileDraw(t) {
-        t.plan(3);
-        OpenLayers.Layer.Grid.prototype.queueTileDraw = origQueueTileDraw;
-
-        var map = new OpenLayers.Map('map');
-        layer = new OpenLayers.Layer.WMS(name, url, params);
-        map.addLayer(layer);
-        map.setCenter([0, 0], 3);
-        var queued = layer.tileQueue.length;
-        t.ok(layer.tileQueue.length, "Tiles queued for drawing");
-        map.zoomIn();
-        t.eq(layer.tileQueue.length, queued, "Tile queue has same length after immediate zoom change");
-        t.delay_call(1, function() {
-            t.eq(layer.tileQueue.length, 0, "Tiles from queue processed");
-        });
-        
-        map.destroy();
-        delete OpenLayers.Layer.Grid.prototype.queueTileDraw;
-    }
-
     function test_Layer_Grid_clearTiles (t) {
         t.plan(4);
 
@@ -239,12 +215,26 @@
         t.eq( zoom, 2, "getZoomForExtent() returns correct value");
     }   
     
+    function test_moveGriddedTiles(t) {
+        t.plan(1);
+        var map = new OpenLayers.Map('map');
+        layer = new OpenLayers.Layer.WMS(name, url, params, {buffer: 2});
+        map.addLayer(layer);
+        map.setCenter([0, 0], 5);
+        var count = 0;
+        layer.shiftColumn = function(prepend) {
+            ++count;
+            OpenLayers.Layer.WMS.prototype.shiftColumn.apply(this, arguments);
+        }
+        map.moveTo([15, 0]);
+        t.delay_call(.5, function() {
+            t.eq(count, 1, "column shifted once");
+        });
+    }
+    
     function test_Layer_Grid_moveTo(t) {
 
-        t.plan(17);
-
-        var origIsNative = OpenLayers.Animation.isNative;
-        OpenLayers.Animation.isNative = false;
+        t.plan(13);
 
         var map = new OpenLayers.Map('map');
         layer = new OpenLayers.Layer.WMS(name, url, params);
@@ -254,23 +244,6 @@
         map.setCenter([-10, 0], 5);
         
         var log = [];
-        var origDeferMoveGriddedTiles = layer.deferMoveGriddedTiles;
-        layer.deferMoveGriddedTiles = function() {
-            log.push("deferMoveGriddedTiles");
-            origDeferMoveGriddedTiles.apply(this, arguments);
-        };
-        layer.moveGriddedTiles = function() {
-            log.push("moveGriddedTiles");
-            OpenLayers.Layer.WMS.prototype.moveGriddedTiles.apply(this, arguments);
-        };
-        map.moveTo([5, 0]);
-        t.eq(log[0], "moveGriddedTiles", "deferred after moveTo");
-        map.moveTo([0, 0]);
-        t.eq(log[1], "moveGriddedTiles", "deferred again after another moveTo");
-        t.eq(log.length, 2, "no tiles loaded yet");
-        t.delay_call(1, function() {
-            t.eq(log[2], "deferMoveGriddedTiles", "tiles moved after tileLoadingDelay");
-        });
 
     //make sure null bounds doesnt cause script error. 
     // no test necessary, just action
@@ -292,9 +265,6 @@
             g_WhichFunc = "MoveGridded";
             g_Bounds = layer.map.getExtent();
         };
-        layer.deferMoveGriddedTiles = function() {
-            g_WhichFunc = "DeferMoveGridded";
-        }
         var clearTestBounds = function() {
             g_WhichFunc = null;
             g_Bounds = null;
@@ -401,8 +371,6 @@
         layer.moveTo(null, zoomChanged);
         t.ok(g_WhichFunc == "InitGridded", "if tiles drastically out of bounds, we call initGriddedTile()");
         t.ok(g_Bounds.equals(b), "if tiles drastically out of bounds, we call initGriddedTile() with correct bounds");
-
-        OpenLayers.Animation.isNative = origIsNative;
     }
 
     /** THIS WOULD BE WHERE THE TESTS WOULD GO FOR 
@@ -431,12 +399,13 @@
         layer.grid = [ [6, 7], 
                        [8, 9]];
 
+        // if we clone when tiles are still loading, this should not influence the clone
+        layer.numLoadingTiles = 1;
         var clone = layer.clone();
-
+        t.eq( clone.numLoadingTiles, 0, "numLoadingTiles should be reset");
         t.ok( clone.grid != layer.grid, "clone does not copy grid");
         t.ok( clone.grid.length == 0, "clone creates a new array instead");
         
-        t.ok(clone.tileQueue !== layer.tileQueue, "new tileQueue for clone");
         t.eq(clone.backBuffer, null, "no backbuffer from original");
 
         t.ok( clone.tileSize.equals(layer.tileSize), "tileSize correctly cloned");
@@ -558,7 +527,8 @@
                         }
                     }
                 }
-            }
+            },
+            imgDiv: {className: ''}
         }
 
         g_registered = {};
@@ -597,7 +567,7 @@
         
         layer.numLoadingTiles = 2; 
         g_events = [];
-        tile.onLoadEnd.apply(layer);
+        tile.onLoadEnd.apply(layer, [{}]);
         t.eq(g_events[0][0], "tileloaded", "tileloaded triggered when numLoadingTiles is > 0");
         t.ok(g_events[0][1].tile === tile, "tile passed as tile property to event object");
         t.eq(g_events.length, 1, "loadend event not triggered when numLoadingTiles is > 0");
@@ -606,7 +576,7 @@
 
         g_events = [];
         layer.grid = [[{}]]; // to prevent error in updateBackBuffer
-        tile.onLoadEnd.apply(layer);
+        tile.onLoadEnd.apply(layer, [{}]);
         t.eq(g_events[0][0], "tileloaded", "tileloaded triggered when numLoadingTiles is 0");
         t.eq(g_events[1][0], "loadend", "loadend event triggered when numLoadingTiles is 0");
         t.eq(layer.numLoadingTiles, 0, "numLoadingTiles decremented");
@@ -656,7 +626,7 @@
     }
     function test_Layer_Grid_getTileBounds(t) {
         t.plan(2);
-        var map = new OpenLayers.Map("map2");
+        var map = new OpenLayers.Map("map2", {zoomMethod: null});
         var url = "http://octo.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.WMS(name, url, params);
         
@@ -695,24 +665,24 @@
         map.setCenter(new OpenLayers.LonLat(0, 0), 4); 
         t.eq( layer0.grid.length, 3, "Grid rows with buffer:0" );
         map.setBaseLayer(layer1);
-        t.eq( layer1.grid.length, 4, "Grid rows with buffer:1" );
+        t.eq( layer1.grid.length, 5, "Grid rows with buffer:1" );
         map.setBaseLayer(layer2);
-        t.eq( layer2.grid.length, 6, "Grid rows with buffer:2" );
+        t.eq( layer2.grid.length, 7, "Grid rows with buffer:2" );
 
         // zooming in on Greenland exercises the bug from pre-r4313
         map.setCenter(new OpenLayers.LonLat(0, 90), 4); 
         t.eq( layer0.grid.length, 3, "Grid rows with buffer:0" );
         map.setBaseLayer(layer1);
-        t.eq( layer1.grid.length, 4, "Grid rows with buffer:1" );
+        t.eq( layer1.grid.length, 5, "Grid rows with buffer:1" );
         map.setBaseLayer(layer2);
-        t.eq( layer2.grid.length, 6, "Grid rows with buffer:2" );
+        t.eq( layer2.grid.length, 7, "Grid rows with buffer:2" );
     }
 
     function test_Layer_Grid_destroy (t) {
 
         t.plan( 9 );
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         layer = new OpenLayers.Layer.Grid(name, url, params);
         map.addLayer(layer);
         layer.destroy();
@@ -753,7 +723,6 @@
     }
 
     function test_setOpacity(t) {
-
         t.plan(5);
 
         var map = new OpenLayers.Map('map');
@@ -804,12 +773,8 @@
 
         var exc;
         layer.serverResolutions = [0.5];
-        try {
-            res = layer.getServerResolution(1);
-        } catch(e) {
-            exc = e;
-        }
-        t.ok(exc != undefined, '[4] getServerResolution generates exception');
+        res = layer.getServerResolution(1);
+        t.eq(res, 0.5, '[4] getServerResolution return value is correct');
     }
 
     function test_getServerZoom(t) {
@@ -847,12 +812,8 @@
         var exc;
         layer.serverResolutions = [0.5];
         resolution = 1;
-        try {
-            zoom = layer.getServerZoom();
-        } catch(e) {
-            exc = e;
-        }
-        t.ok(exc != undefined, '[4] getServerZoom generates exception');
+        zoom = layer.getServerZoom();
+        t.eq(zoom, 0, '[4] getServerZoom return value is correct');
 
         map.destroy();
     }
@@ -862,7 +823,8 @@
         t.plan(11);
 
         var map = new OpenLayers.Map('map', {
-            resolutions: [32, 16, 8, 4, 2, 1]
+            resolutions: [32, 16, 8, 4, 2, 1],
+            zoomMethod: null
         });
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
             isBaseLayer: true,
@@ -874,47 +836,47 @@
         map.setCenter(new OpenLayers.LonLat(0, 0), 2);
 
         // test initial conditions
-        t.eq(layer.div.style.width, '100%', 'layer div scale is 1');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 1, 'layer div scale is 1');
 
         // change from resolution 8 to 4
         map.zoomTo(3);
-        t.eq(layer.div.style.width, '200%', '[8->4] layer div scale is 2');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 2, '[8->4] layer div scale is 2');
 
         // change from resolution 8 to 2
         map.zoomTo(2); map.zoomTo(4);
-        t.eq(layer.div.style.width, '400%', '[8->2] layer div scale is 4');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 4, '[8->2] layer div scale is 4');
 
         // change from resolution 8 to 1
         map.zoomTo(2); map.zoomTo(5);
-        t.eq(layer.div.style.width, '800%', '[8->1] layer div scale is 8');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 8, '[8->1] layer div scale is 8');
 
         // change from resolution 4 to 2
         map.zoomTo(3); map.zoomTo(4);
-        t.eq(layer.div.style.width, '400%', '[4->2] layer div scale is 4');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 4, '[4->2] layer div scale is 4');
 
         // change from resolution 4 to 1
         map.zoomTo(3); map.zoomTo(5);
-        t.eq(layer.div.style.width, '800%', '[4->1] layer div scale is 8');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 8, '[4->1] layer div scale is 8');
 
         // change from resolution 2 to 1
         map.zoomTo(4); map.zoomTo(5);
-        t.eq(layer.div.style.width, '800%', '[2->1] layer div scale is 8');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 8, '[2->1] layer div scale is 8');
 
         // change from resolution 1 to 2
         map.zoomTo(5); map.zoomTo(4);
-        t.eq(layer.div.style.width, '400%', '[1->2] layer div scale is 4');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 4, '[1->2] layer div scale is 4');
 
         // change from resolution 1 to 4
         map.zoomTo(5); map.zoomTo(3);
-        t.eq(layer.div.style.width, '200%', '[1->4] layer div scale is 2');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 2, '[1->4] layer div scale is 2');
 
         // change from resolution 1 to 8
         map.zoomTo(5); map.zoomTo(2);
-        t.eq(layer.div.style.width, '100%', '[1->8] layer div scale is 1');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 1, '[1->8] layer div scale is 1');
 
         // change from resolution 1 to 16
         map.zoomTo(5); map.zoomTo(1);
-        t.eq(layer.div.style.width, '100%', '[1->16] layer div scale is 1');
+        t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 1, '[1->16] layer div scale is 1');
 
         map.destroy();
     }
@@ -923,7 +885,8 @@
         t.plan(4);
 
         var map = new OpenLayers.Map('map', {
-            resolutions: [1, 0.5, 0.025]
+            resolutions: [1, 0.5, 0.025],
+            zoomMethod: null
         });
         var resolution;
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
@@ -967,7 +930,8 @@
         t.plan(4);
 
         var map = new OpenLayers.Map('map', {
-            resolutions: [1, 0.5, 0.025]
+            resolutions: [1, 0.5, 0.025],
+            zoomMethod: null
         });
         var resolution;
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
@@ -1005,63 +969,8 @@
         map.destroy();
     }
 
-    function test_transformDiv(t) {
-
-        t.plan(8);
-
-        var map = new OpenLayers.Map('map4');
-        var layer = new OpenLayers.Layer.WMS('', '', {}, {
-            isBaseLayer: true
-        });
-        map.addLayer(layer);
-        map.zoomToMaxExtent();
-
-        // the layer container's dimensions are 100px width 100px height
-        // the position of the viewport center is 384, 256
-
-        layer.transformDiv(2);
-
-        t.eq(layer.div.style.width, '200%', '[1] layer div has correct width');
-        t.eq(layer.div.style.height, '200%', '[1] layer div has correct height');
-
-        t.eq(layer.div.style.left, '-384%', '[1] layer div has correct left');
-        t.eq(layer.div.style.top, '-256%', '[1] layer div has correct top');
-
-        // now move the layer container and test again
-
-        map.layerContainerDiv.style.left = '-1024px';
-        map.layerContainerDiv.style.top = '768px';
-
-        layer.transformDiv(2);
-
-        t.eq(layer.div.style.width, '200%', '[2] layer div has correct width');
-        t.eq(layer.div.style.height, '200%', '[2] layer div has correct height');
-
-        t.eq(layer.div.style.left, '-1408%', '[2] layer div has correct left');
-        t.eq(layer.div.style.top, '512%', '[2] layer div has correct top');
-
-        map.destroy();
-    }
-
-    function test_getResolutionScale(t) {
-        t.plan(1);
-
-        var map = new OpenLayers.Map('map');
-        var layer = new OpenLayers.Layer.WMS('', '', {}, {
-            isBaseLayer: true
-        });
-        map.addLayer(layer);
-        map.zoomToMaxExtent();
-
-        layer.transformDiv(2);
-        var scale = layer.getResolutionScale();
-        t.eq(scale, 2, 'getResolutionScale returns correct value');
-
-        map.destroy();
-    }
-
     function test_applyBackBuffer(t) {
-        t.plan(16);
+        t.plan(12);
 
         var map = new OpenLayers.Map('map2');
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
@@ -1086,19 +995,16 @@
             return backBuffer;
         };
         layer.gridResolution = 32;
+        layer.backBufferResolution = 2;
         layer.grid[0][0].bounds = new OpenLayers.Bounds(0, 1, 1, 0);
         layer.applyBackBuffer(2);
         t.ok(layer.backBuffer === backBuffer,
              'back buffer set in layer');
-        t.ok(layer.div.firstChild === backBuffer,
+        t.ok(map.layerContainerDiv.firstChild === backBuffer,
              'back buffer inserted as first child');
-        t.eq(layer.backBuffer.style.width, '1600%',
-             'back buffer has correct width');
-        t.eq(layer.backBuffer.style.height, '1600%',
-             'back buffer has correct height');
-        t.eq(layer.backBuffer.style.left, '250%',
+        t.eq(layer.backBuffer.style.left, '250px',
              'back buffer has correct left');
-        t.eq(layer.backBuffer.style.top, '275%',
+        t.eq(layer.backBuffer.style.top, '275px',
              'back buffer has correct top');
 
         // test #3
@@ -1107,46 +1013,43 @@
             return backBuffer;
         };
         layer.gridResolution = 32;
+        layer.backBufferResolution = 2;
         layer.grid[0][0].bounds = new OpenLayers.Bounds(0, 1, 1, 0);
-        map.layerContainerDiv.style.left = '20px';
-        map.layerContainerDiv.style.top = '-20px';
+        map.layerContainerOriginPx.x = 20;
+        map.layerContainerOriginPx.y = -20;
         layer.applyBackBuffer(2);
         t.ok(layer.backBuffer === backBuffer,
              'back buffer set in layer');
-        t.ok(layer.div.firstChild === backBuffer,
+        t.ok(map.layerContainerDiv.firstChild === backBuffer,
              'back buffer inserted as first child');
-        t.eq(layer.backBuffer.style.width, '1600%',
-             'back buffer has correct width');
-        t.eq(layer.backBuffer.style.height, '1600%',
-             'back buffer has correct height');
-        t.eq(layer.backBuffer.style.left, '230%',
+        t.eq(layer.backBuffer.style.left, '230px',
              'back buffer has correct left');
-        t.eq(layer.backBuffer.style.top, '295%',
+        t.eq(layer.backBuffer.style.top, '295px',
              'back buffer has correct top');
 
-        // test #4
-        // and a back buffer in the layer and do as if back buffer removal
-        // has been scheduled, and test that applyBackBuffer removes the
-        // back buffer and clears the timer
-        layer.createBackBuffer = function() {
-            return;
-        };
-        backBuffer = document.createElement('div');
-        layer.div.insertBefore(backBuffer, layer.div.firstChild);
-        layer.backBuffer = backBuffer;
-        layer.backBufferTimerId = 'fake';
-        layer.applyBackBuffer(2);
-        t.ok(backBuffer.parentNode !== layer.div,
-             'back buffer is not child node of layer div');
-        t.eq(layer.backBuffer, null,
-             'back buffer not set in layer');
-        t.eq(layer.backBufferTimerId, null,
-             'back buffer timer cleared');
-        map.destroy();
+         // test #4
+         // and a back buffer in the layer and do as if back buffer removal
+         // has been scheduled, and test that applyBackBuffer removes the
+         // back buffer and clears the timer
+         layer.createBackBuffer = function() {
+             return;
+         };
+         backBuffer = document.createElement('div');
+         map.layerContainerDiv.insertBefore(backBuffer, map.baseLayer.div);
+         layer.backBuffer = backBuffer;
+         layer.backBufferTimerId = 'fake';
+         layer.applyBackBuffer(2);
+         t.ok(backBuffer !== map.layerContainerDiv.firstChild,
+              'back buffer is not first child of layer container div');
+         t.eq(layer.backBuffer, null,
+              'back buffer not set in layer');
+         t.eq(layer.backBufferTimerId, null,
+              'back buffer timer cleared');
+         map.destroy();
     }
 
     function test_createBackBuffer(t) {
-        t.plan(7);
+        t.plan(9);
 
         var map = new OpenLayers.Map('map');
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
@@ -1171,16 +1074,31 @@
         OpenLayers.Tile.Image.prototype.createBackBuffer = function() {
             return document.createElement('div');
         };
+        
+        layer.transitionEffect = 'map-resize';
+        backBuffer = layer.createBackBuffer();
+        t.ok(backBuffer.style.zIndex == 99, 'z-index of backbuffer correct for "map-resize".');
+        layer.removeBackBuffer();
+        
+        layer.transitionEffect = 'resize';
         backBuffer = layer.createBackBuffer();
+        t.ok(backBuffer.style.zIndex == layer.getZIndex() - 1, 'z-index of backbuffer correct for "resize",');
+
+        layer.backBufferResolution = 1;
+        layer.gridResolution = 1;
+        layer.backBuffer = backBuffer;
+        layer.div.appendChild(backBuffer);
+        layer.backBufferLonLat = {lon: 0, lat: 0};
+        layer.applyBackBuffer(1);
         t.ok(backBuffer != undefined,
              'createBackBuffer returns a back buffer');
-        t.eq(backBuffer.childNodes[0].style.left, '0%',
+        t.eq(backBuffer.childNodes[0].style.left, '0px',
              'first tile has correct left');
-        t.eq(backBuffer.childNodes[0].style.top, '0%',
+        t.eq(backBuffer.childNodes[0].style.top, '0px',
              'first tile has correct top');
-        t.eq(backBuffer.childNodes[1].style.left, '256%',
+        t.eq(backBuffer.childNodes[1].style.left, '256px',
              'second tile has correct left');
-        t.eq(backBuffer.childNodes[1].style.top, '0%',
+        t.eq(backBuffer.childNodes[1].style.top, '0px',
              'second tile has correct top');
 
         map.destroy();
@@ -1188,7 +1106,7 @@
     }
 
     function test_removeBackBuffer(t) {
-        t.plan(4);
+        t.plan(3);
 
         var map = new OpenLayers.Map('map');
         var layer = new OpenLayers.Layer.WMS('', '', {}, {isBaseLayer: true});
@@ -1200,20 +1118,62 @@
         layer.div.appendChild(backBuffer);
         layer.backBufferResolution = 32;
 
-        // add a fake back buffer removal timer
-        layer.backBufferTimerId = 'fake';
-
         layer.removeBackBuffer();
         t.eq(layer.backBuffer, null, 'backBuffer set to null in layer');
         t.eq(layer.backBufferResolution, null,
              'backBufferResolution set to null in layer');
         t.ok(backBuffer.parentNode !== layer.div,
              'back buffer removed from layer');
-        t.eq(layer.backBufferTimerId, null,
-             'backBufferTimerId set to null in layer');
 
         map.destroy();
     }
+    
+    function test_backbuffer_replace(t) {
+        t.plan(6);
+        var map = new OpenLayers.Map('map', {tileManager: null});
+        var layer = new OpenLayers.Layer.WMS('', '../../img/blank.gif');
+        map.addLayer(layer);
+        map.zoomToMaxExtent();
+        
+        t.delay_call(1, function() {
+            layer.mergeNewParams({foo: 'bar'});
+            var tile = layer.grid[1][1];
+            t.ok(OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile is marked for being replaced');
+            t.ok(document.getElementById(tile.id + '_bb'), 'backbuffer created for tile');
+            // simulate a css declaration where '.olTileReplacing' sets display
+            // to none.
+            tile.imgDiv.style.display = 'none';
+            tile.onImageLoad();
+            t.ok(!OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile replaced, no longer marked');
+            t.ok(!document.getElementById(tile.id + '_bb'), 'backbuffer removed for tile');
+            
+            layer.mergeNewParams({foo: 'baz'});
+            tile = layer.grid[1][1];
+            // simulate a css declaration where '.olTileReplacing' does not set
+            // display to none.
+            tile.imgDiv.style.display = 'block';
+            tile.onImageLoad();
+            t.ok(!OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile replaced, no longer marked');
+            t.ok(document.getElementById(tile.id + '_bb'), 'backbuffer not removed for visible tile');
+        });
+    }
+
+    function test_backbuffer_replace_singleTile(t) {
+        t.plan(1);
+        var map = new OpenLayers.Map('map');
+        var layer = new OpenLayers.Layer.WMS('', '../../img/blank.gif', null, {
+            singleTile: true,
+            transitionEffect: 'resize'
+        });
+        map.addLayer(layer);
+        map.zoomToMaxExtent();
+        
+        t.delay_call(1, function() {
+            map.zoomIn();
+            var tile = layer.grid[0][0];
+            t.ok(!OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile is not marked for being replaced for singleTile layers');
+        });
+    }
 
     function test_singleTile_move_and_zoom(t) {
 
@@ -1227,9 +1187,10 @@
 
         t.plan(4);
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {zoomMethod: null});
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
             isBaseLayer: true,
+            transitionEffect: null,
             singleTile: true,
             ratio: 1.1
         });
@@ -1240,8 +1201,8 @@
         map.setCenter(new OpenLayers.LonLat(50, 50));
         t.ok(layer.backBuffer && layer.backBuffer.parentNode === layer.div,
                 'backbuffer inserted after map move');
-        t.eq(layer.backBuffer.style.left, '-25%');
-        t.eq(layer.backBuffer.style.top, '-28%');
+        t.eq(layer.backBuffer.style.left, '-25px');
+        t.eq(layer.backBuffer.style.top, '-28px');
         // zoom
         map.zoomTo(1);
         t.eq(layer.backBuffer, null,
@@ -1258,7 +1219,9 @@
         //
 
         var map = new OpenLayers.Map('map', {
-            resolutions: [32, 16, 8, 4, 2, 1]
+            resolutions: [32, 16, 8, 4, 2, 1],
+            zoomMethod: null,
+            tileManager: null
         });
         var layer = new OpenLayers.Layer.WMS(
             "WMS",
@@ -1272,7 +1235,8 @@
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0, 0), 2);
 
-        layer.createBackBuffer = function() {
+        var origCreateBackBuffer = OpenLayers.Tile.Image.prototype.createBackBuffer;
+        OpenLayers.Tile.Image.prototype.createBackBuffer = function() {
             return document.createElement('div');
         };
 
@@ -1287,61 +1251,61 @@
 
         // change resolution from 8 to 4
         map.zoomTo(3);
-        t.eq(layer.backBuffer.style.width, '100%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
             '[8->4] back buffer not scaled');
         removeBackBuffer();
 
         // change resolution from 8 to 2
         map.zoomTo(2); removeBackBuffer(); map.zoomTo(4);
-        t.eq(layer.backBuffer.style.width, '100%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
             '[8->2] back buffer not scaled');
         removeBackBuffer();
 
         // change resolution from 16 to 4
         map.zoomTo(1); removeBackBuffer(); map.zoomTo(3);
-        t.eq(layer.backBuffer.style.width, '200%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 2,
              '[16->4] back buffer width is as expected');
-        t.eq(layer.backBuffer.style.width, '200%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.height) / parseInt(layer.div.lastChild.style.height), 2,
              '[16->4] back buffer height is as expected');
         removeBackBuffer();
 
         // change resolution from 32 to 1
         map.zoomTo(0); removeBackBuffer(); map.zoomTo(5);
-        t.eq(layer.backBuffer.style.width, '400%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 4,
              '[32->1] back buffer width is as expected');
-        t.eq(layer.backBuffer.style.width, '400%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.height) / parseInt(layer.div.lastChild.style.height), 4,
              '[32->1] back buffer height is as expected');
         removeBackBuffer();
 
         // change resolution from 4 to 2
         map.zoomTo(3); removeBackBuffer(); map.zoomTo(4);
-        t.eq(layer.backBuffer.style.width, '100%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
             '[4->2] back buffer not scaled');
         removeBackBuffer();
 
         // change resolution from 4 to 1
         map.zoomTo(3); removeBackBuffer(); map.zoomTo(5);
-        t.eq(layer.backBuffer.style.width, '100%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
             '[4->1] back buffer not scaled');
         removeBackBuffer();
 
         // change resolution from 1 to 4
         map.zoomTo(5); removeBackBuffer(); map.zoomTo(3);
-        t.eq(layer.backBuffer.style.width, '100%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
             '[1->4] back buffer not scaled');
         removeBackBuffer();
 
         // change resolution from 4 to 8
         map.zoomTo(3); removeBackBuffer(); map.zoomTo(2);
-        t.eq(layer.backBuffer.style.width, '100%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
             '[4->8] back buffer not scaled');
         removeBackBuffer();
 
         // change resolution from 4 to 16
         map.zoomTo(3); removeBackBuffer(); map.zoomTo(1);
-        t.eq(layer.backBuffer.style.width, '50%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 0.5,
              '[4->16] back buffer width is as expected');
-        t.eq(layer.backBuffer.style.width, '50%',
+        t.eq(parseInt(layer.backBuffer.firstChild.style.height) / parseInt(layer.div.lastChild.style.height), 0.5,
              '[4->16] back buffer height is as expected');
         removeBackBuffer();
 
@@ -1350,10 +1314,11 @@
         //
 
         map.destroy();
+        OpenLayers.Tile.Image.prototype.createBackBuffer = origCreateBackBuffer
     }
 
-    function test_delayed_back_buffer_removal(t) {
 
+    function test_delayed_back_buffer_removal(t) {
         //
         // Test that the delaying of the back buffer removal behaves
         // as expected.
@@ -1362,9 +1327,10 @@
         t.plan(5);
 
         // set up
-
+        
         var map = new OpenLayers.Map('map', {
-            resolutions: [32, 16, 8, 4, 2, 1]
+            resolutions: [32, 16, 8, 4, 2, 1],
+            zoomMethod: null
         });
         var layer = new OpenLayers.Layer.WMS('', '', {}, {
             isBaseLayer: true,
@@ -1375,30 +1341,33 @@
 
         map.zoomTo(1);
 
-        t.delay_call(1, function() {
+        t.ok(layer.backBuffer === map.layerContainerDiv.firstChild,
+             '[a] back buffer is first child of layer container div');
 
-            t.ok(layer.backBuffer.parentNode === layer.div,
-                 '[a] back buffer is a child of layer div');
-            t.ok(layer.backBufferTimerId !== null,
-                 '[a] back buffer scheduled for removal');
+        // Mark one tile loaded and add an element to the backbuffer, to see if
+        // backbuffer removal gets scheduled.
+        layer.backBuffer.appendChild(document.createElement('img'));
+        layer.grid[1][1].onImageLoad();
 
-            var backBuffer = layer.backBuffer;
+        t.ok(layer.backBufferTimerId !== null,
+             '[a] back buffer scheduled for removal');
 
-            map.zoomTo(2);
+        var backBuffer = layer.backBuffer;
 
-            t.ok(layer.backBuffer !== backBuffer,
-                 '[b] a new back buffer was created');
-            t.ok(layer.backBuffer.parentNode === layer.div,
-                 '[b] back buffer is a child of layer div');
-            t.ok(layer.backBufferTimerId === null,
-                 '[b] back buffer no longer scheduled for removal');
+        map.zoomTo(2);
 
-            // tear down
+        t.ok(layer.backBuffer !== backBuffer,
+             '[b] a new back buffer was created');
+        t.ok(layer.backBuffer === map.layerContainerDiv.firstChild,
+             '[b] back buffer is first child of layer container div');
+        t.ok(layer.backBufferTimerId === null,
+             '[b] back buffer no longer scheduled for removal');
 
-            map.destroy();
-        });
+        // tear down
+
+        map.destroy();
     }
-    
+
     function test_getGridData(t) {
         t.plan(12);
         
@@ -1587,6 +1556,32 @@
 
         map.destroy();
     }
+
+    function test_addOptions(t) {
+        t.plan(15);
+        var map = new OpenLayers.Map('map');
+        layer = new OpenLayers.Layer.WMS(name, url, params, {buffer:2});
+        map.addLayer(layer);
+        t.eq(layer.tileSize, map.getTileSize(), "layer's tile size is equal to the map's tile size");
+        t.ok(layer.removeBackBufferDelay !== 0, "removeBackBufferDelay should not be 0 since we are not singleTile");
+        t.eq(layer.className, "olLayerGrid", "className correct for gridded mode");
+        map.setCenter(new OpenLayers.LonLat(0,0),5);
+        t.eq(layer.grid.length, 8, "Grid rows is correct.");
+        t.eq(layer.grid[0].length, 7, "Grid cols is correct.");
+        t.eq(layer.singleTile, false, "singleTile is false by default");
+        layer.addOptions({singleTile: true});
+        t.eq(layer.removeBackBufferDelay, 0, "removeBackBufferDelay set to 0 since singleTile is true");
+        t.eq(layer.singleTile, true, "singleTile set to true");
+        t.eq(layer.className, "olLayerGridSingleTile", "className correct for singleTile mode");
+        t.eq(layer.grid.length, 1, "Grid rows is correct.");
+        t.eq(layer.grid[0].length, 1, "Grid cols is correct.");
+        t.eq(layer.tileSize, new OpenLayers.Size(748, 823), "tile size changed");
+        layer.addOptions({singleTile: false});
+        t.eq(layer.grid.length, 8, "Grid rows is correct.");
+        t.eq(layer.grid[0].length, 7, "Grid cols is correct.");
+        t.eq(layer.tileSize, map.getTileSize(), "layer's tile size is equal to the map's tile size");
+        map.destroy();
+    }
     
   </script>
 </head>
diff --git a/tests/Layer/KaMap.html b/tests/Layer/KaMap.html
index b22917f..a41e4eb 100644
--- a/tests/Layer/KaMap.html
+++ b/tests/Layer/KaMap.html
@@ -45,17 +45,17 @@
         map.setCenter(new OpenLayers.LonLat(0, 0), 4); 
         t.eq( layer0.grid.length, 3, "Grid rows with buffer:0" );
         map.setBaseLayer(layer1);
-        t.eq( layer1.grid.length, 4, "Grid rows with buffer:1" );
+        t.eq( layer1.grid.length, 5, "Grid rows with buffer:1" );
         map.setBaseLayer(layer2);
-        t.eq( layer2.grid.length, 6, "Grid rows with buffer:2" );
+        t.eq( layer2.grid.length, 7, "Grid rows with buffer:2" );
 
         // zooming in on Greenland exercises the bug from pre-r4313
         map.setCenter(new OpenLayers.LonLat(0, 90), 4); 
         t.eq( layer0.grid.length, 3, "Grid rows with buffer:0" );
         map.setBaseLayer(layer1);
-        t.eq( layer1.grid.length, 4, "Grid rows with buffer:1" );
+        t.eq( layer1.grid.length, 5, "Grid rows with buffer:1" );
         map.setBaseLayer(layer2);
-        t.eq( layer2.grid.length, 6, "Grid rows with buffer:2" );
+        t.eq( layer2.grid.length, 7, "Grid rows with buffer:2" );
         map.destroy();
     }
 
@@ -233,7 +233,7 @@
     }
     function test_Layer_KaMap_getTileBounds(t) {
         t.plan(2);
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {zoomMethod: null});
         var url = "http://octo.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.KaMap(name, url, params);
         
diff --git a/tests/Layer/MapServer.html b/tests/Layer/MapServer.html
index 8efcce0..9ae8d01 100644
--- a/tests/Layer/MapServer.html
+++ b/tests/Layer/MapServer.html
@@ -36,7 +36,7 @@
     
         var url = "http://labs.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.MapServer(name, url, params);
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         map.addLayer(layer);
         var pixel = new OpenLayers.Pixel(5,6);
         var tile = layer.addTile(new OpenLayers.Bounds(1,2,3,4), pixel);
@@ -58,8 +58,8 @@
         t.eq( tile.url,
              url + "?" + OpenLayers.Util.getParameterString(tParams).replace(/,/g, "+"),
              "image src is created correctly via addtile" );
-        t.eq( tile.getTile().style.top, "6%", "image top is set correctly via addtile" );
-        t.eq( tile.getTile().style.left, "5%", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.top, "6px", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.left, "5px", "image top is set correctly via addtile" );
 
         var firstChild = layer.div.firstChild;
         t.eq( firstChild.nodeName.toLowerCase(), "img", "div first child is an image object" );
diff --git a/tests/Layer/Markers.html b/tests/Layer/Markers.html
index 2db3052..07f699f 100644
--- a/tests/Layer/Markers.html
+++ b/tests/Layer/Markers.html
@@ -59,7 +59,7 @@
         
         t.plan(6);
         
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {zoomMethod: null});
         var layer = new OpenLayers.Layer.Markers("Base", {isBaseLayer: true});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0, 0), 1);
diff --git a/tests/Layer/PointGrid.html b/tests/Layer/PointGrid.html
index 22d85c7..6fb6ae2 100644
--- a/tests/Layer/PointGrid.html
+++ b/tests/Layer/PointGrid.html
@@ -211,7 +211,8 @@
             div: "map",
             layers: [layer],
             center: new OpenLayers.LonLat(0, 0),
-            zoom: 1
+            zoom: 1,
+            zoomMethod: null
         });
         
         t.eq(layer.features.length, 50, "50 features at zoom 1");
diff --git a/tests/Layer/SphericalMercator.html b/tests/Layer/SphericalMercator.html
index 463ffe1..be94735 100644
--- a/tests/Layer/SphericalMercator.html
+++ b/tests/Layer/SphericalMercator.html
@@ -23,11 +23,11 @@
         t.eq(Math.round(phillipines.lat), 0, "Phillipines lat is correct");
         t.eq(phillipines.lon, 20037508.340, "Phillipines lon is correct");
        
-        // Rounding errors make this not infinity 
-        t.ok(ne.lat > 50000000, "NE lat is correct");
+        // be kind and stay within the world instead of having +/- infinity lat
+        t.ok(ne.lat, 20037508.34, "NE lat is correct");
         t.eq(ne.lon, 20037508.34, "NE lon is correct");
         
-        t.eq(sw.lat, -Infinity, "SW lat is correct");
+        t.eq(sw.lat, -20037508.34, "SW lat is correct");
         t.eq(sw.lon, -20037508.34, "SW lon is correct");
     } 
     
diff --git a/tests/Layer/UTFGrid.html b/tests/Layer/UTFGrid.html
index 16cb852..872d796 100644
--- a/tests/Layer/UTFGrid.html
+++ b/tests/Layer/UTFGrid.html
@@ -32,7 +32,8 @@
             projection: "EPSG:900913",
             layers: [layer],
             center: [0, 0],
-            zoom: 1
+            zoom: 1,
+            tileManager: null
         });
     }
     
@@ -58,6 +59,21 @@
         layer.destroy();
 
     }
+
+    function test_createBackBuffer(t) {
+      t.plan(1);
+      setUp();
+
+      var got;
+      try {
+        got = layer.createBackBuffer();
+      } catch (e) {
+        got = e;
+      } finally {
+        tearDown();
+      }
+      t.eq(got, undefined, "createBackBuffer returns undefined");
+    }
     
     function test_clone(t) {
         t.plan(3);
diff --git a/tests/Layer/WMS.html b/tests/Layer/WMS.html
index c83103f..b990f07 100644
--- a/tests/Layer/WMS.html
+++ b/tests/Layer/WMS.html
@@ -73,7 +73,7 @@
 
         var url = "http://octo.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.WMS(name, url, params);
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         map.addLayer(layer);
         var pixel = new OpenLayers.Pixel(5,6);
         var tile = layer.addTile(new OpenLayers.Bounds(1,2,3,4), pixel);
@@ -89,8 +89,8 @@
         t.eq( tile.url,
              layer.getFullRequestString(tParams),
              "image src is created correctly via addtile" );
-        t.eq( tile.getTile().style.top, "6%", "image top is set correctly via addtile" );
-        t.eq( tile.getTile().style.left, "5%", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.top, "6px", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.left, "5px", "image top is set correctly via addtile" );
 
         var firstChild = layer.div.firstChild;
         t.eq( firstChild.nodeName.toLowerCase(), "img", "div first child is an image object" );
@@ -104,7 +104,7 @@
 
         var url = "http://octo.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.WMS(name, url, params, {encodeBBOX:true});
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         map.addLayer(layer);
         var pixel = new OpenLayers.Pixel(5,6);
         var tile = layer.addTile(new OpenLayers.Bounds(1,2,3,4), pixel);
@@ -120,8 +120,8 @@
         t.eq( tile.url,
              layer.getFullRequestString(tParams),
              "image src is created correctly via addtile" );
-        t.eq( tile.getTile().style.top, "6%", "image top is set correctly via addtile" );
-        t.eq( tile.getTile().style.left, "5%", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.top, "6px", "image top is set correctly via addtile" );
+        t.eq( tile.getTile().style.left, "5px", "image top is set correctly via addtile" );
 
         var firstChild = layer.div.firstChild;
         t.eq( firstChild.nodeName.toLowerCase(), "img", "div first child is an image object" );
@@ -136,8 +136,8 @@
         layer = new OpenLayers.Layer.WMS(name, url, params, {buffer:2});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0),5);
-        t.eq( layer.grid.length, 7, "Grid rows is correct." );
-        t.eq( layer.grid[0].length, 6, "Grid cols is correct." );
+        t.eq( layer.grid.length, 8, "Grid rows is correct." );
+        t.eq( layer.grid[0].length, 7, "Grid cols is correct." );
         map.destroy();
     }
 
@@ -423,6 +423,26 @@
         t.ok( layer.grid == null, "grid set to null");
     }
 
+    function test_customProjection(t) {
+        t.plan(1);
+        var map = new OpenLayers.Map('map', {
+            units: 'm', 
+            projection: new OpenLayers.Projection('EPSG:28992'),
+            maxExtent: new OpenLayers.Bounds(0, 300000, 300000, 6250000)
+        });
+        var layer = new OpenLayers.Layer.WMS(null, url, {layers: 'mylayer', version: '1.3.0'});
+        map.addLayer(layer);
+        var error = false;
+        try {
+            map.setCenter(new OpenLayers.LonLat(100000,300000), 5);
+        } catch(err) {
+            error = true;
+        }
+        t.ok(!error, "no error on getURL if layer has a custom projection and no defaults defined");
+        layer.destroy();
+        map.destroy();
+    }
+
     function test_Layer_WMS_v13(t) {
 
         t.plan(6);
@@ -533,6 +553,26 @@
         
         map.destroy();
     }
+    
+    function test_tileBounds(t) {
+        t.plan(3);
+        
+        var map = new OpenLayers.Map("map", {projection: "EPSG:3857", zoomMethod: null});
+        var layer = new OpenLayers.Layer.WMS("wms", "../../img/blank.gif");
+        map.addLayer(layer);
+        map.setCenter([0, 0], 1);
+        map.pan(2, -100);
+        map.zoomIn();
+        t.eq(layer.grid[1][0].bounds, new OpenLayers.Bounds(-10018754.17, 0, 0, 10018754.17), "no floating point errors after zooming");
+        map.setCenter([0, 0], 14);
+        var bounds = layer.grid[0][0].bounds.clone();
+        map.pan(260, 520);
+        map.pan(-260, -520);
+        t.eq(layer.grid[0][0].bounds, bounds, "no floating point errors after dragging back and forth");
+        t.eq(bounds.right, 0, "0 is 0, and not some super small number");
+        
+        map.destroy();
+    }
 
 
   </script>
diff --git a/tests/Layer/WMTS.html b/tests/Layer/WMTS.html
index e8d7a23..c6dcd4c 100644
--- a/tests/Layer/WMTS.html
+++ b/tests/Layer/WMTS.html
@@ -245,7 +245,8 @@
                     layers: [layer],
                     projection: "EPSG:4326",                                    
                     maxResolution: 0.3515625,
-                    maxExtent: new OpenLayers.Bounds(-180, -90, 180, 90)
+                    maxExtent: new OpenLayers.Bounds(-180, -90, 180, 90),
+                    zoomMethod: null
                 });
                 map.setCenter(new OpenLayers.LonLat(-97.0, 38.0), 1);
                 t.eq(layer.getURL(new OpenLayers.Bounds(-135.0, 0.0, -90.0, 45.0)), 
diff --git a/tests/Layer/WrapDateLine.html b/tests/Layer/WrapDateLine.html
index 700abf3..efe8903 100644
--- a/tests/Layer/WrapDateLine.html
+++ b/tests/Layer/WrapDateLine.html
@@ -134,7 +134,7 @@
 
         var url = "http://octo.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.WMS(name, url, params, {'wrapDateLine':true,encodeBBOX:true, buffer: 2});
-        var m = new OpenLayers.Map('map', {adjustZoom: function(z) {return z;}});
+        var m = new OpenLayers.Map('map', {tileManager: null, adjustZoom: function(z) {return z;}});
         m.addLayer(layer);
         m.zoomToMaxExtent();
         t.eq(layer.grid[3][0].url, "http://octo.metacarta.com/cgi-bin/mapserv?MAP=%2Fmapdata%2Fvmap_wms.map&LAYERS=basic&FORMAT=image%2Fpng&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&SRS=EPSG%3A4326&BBOX=0%2C-90%2C180%2C90&WIDTH=256&HEIGHT=256", "cell [3][0] is wrapped around the world.");
@@ -151,12 +151,12 @@
              "http://www.openlayers.org/world/index.php",
              {g: "satellite", map: "world"},
              {wrapDateLine: true, buffer: 2} ); 
-        var m = new OpenLayers.Map('map', {adjustZoom: function(z) {return z;}});
+        var m = new OpenLayers.Map('map', {tileManager: null, adjustZoom: function(z) {return z;}});
         m.addLayer(layer);
         m.zoomToMaxExtent();
-        t.eq(layer.grid[5][7].url, "http://www.openlayers.org/world/index.php?g=satellite&map=world&i=jpeg&t=0&l=-256&s=221471921.25", "grid[5][7] kamap is okay");
-        t.eq(layer.grid[5][6].url, "http://www.openlayers.org/world/index.php?g=satellite&map=world&i=jpeg&t=0&l=0&s=221471921.25", "grid[5][6] kamap is okay");
-        t.eq(layer.grid[5][5].url, "http://www.openlayers.org/world/index.php?g=satellite&map=world&i=jpeg&t=0&l=-256&s=221471921.25", "grid[5][5] is okay");
+        t.eq(layer.grid[4][7].url, "http://www.openlayers.org/world/index.php?g=satellite&map=world&i=jpeg&t=0&l=-256&s=221471921.25", "grid[5][7] kamap is okay");
+        t.eq(layer.grid[4][6].url, "http://www.openlayers.org/world/index.php?g=satellite&map=world&i=jpeg&t=0&l=0&s=221471921.25", "grid[5][6] kamap is okay");
+        t.eq(layer.grid[4][5].url, "http://www.openlayers.org/world/index.php?g=satellite&map=world&i=jpeg&t=0&l=-256&s=221471921.25", "grid[5][5] is okay");
         t.ok(layer.grid[7][6].url == null, "no latitudinal wrapping - tile not loaded if outside maxExtent");
         m.destroy();
     }
@@ -170,7 +170,7 @@
                      "prov_bound,fedlimit,rail,road,popplace",
              transparent: "true", format: "image/png"},
             {wrapDateLine: true, encodeBBOX:true, buffer:2});
-        var m = new OpenLayers.Map('map', {adjustZoom: function(z) {return z;}});
+        var m = new OpenLayers.Map('map', {tileManager: null, adjustZoom: function(z) {return z;}});
         m.addLayers([baselayer,layer]);
         m.zoomToMaxExtent();
         t.eq(layer.grid[3][0].url, "http://www2.dmsolutions.ca/cgi-bin/mswms_gmap?LAYERS=bathymetry%2Cland_fn%2Cpark%2Cdrain_fn%2Cdrainage%2Cprov_bound%2Cfedlimit%2Crail%2Croad%2Cpopplace&TRANSPARENT=true&FORMAT=image%2Fpng&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&SRS=EPSG%3A4326&BBOX=0%2C-90%2C180%2C90&WIDTH=256&HEIGHT=256", "grid[0][0] wms overlay is okay");
diff --git a/tests/Map.html b/tests/Map.html
index 860ba33..9693fb1 100644
--- a/tests/Map.html
+++ b/tests/Map.html
@@ -193,6 +193,7 @@
         // test that events.on is called at map construction
         var options = {
             eventListeners: {foo: "bar"},
+            tileManager: null,
             controls: []
         };
         OpenLayers.Events.prototype.on = function(obj) {
@@ -207,7 +208,7 @@
         OpenLayers.Events.prototype.on = function(obj) {
             t.fail("events.on called without eventListeners");
         }
-        var map2 = new OpenLayers.Map("map", {controls: []});
+        var map2 = new OpenLayers.Map("map", {tileManager: null, controls: []});
         OpenLayers.Events.prototype.on = method;
         map2.destroy();
     }
@@ -216,6 +217,7 @@
         t.plan(14);
         var log = [];
         map = new OpenLayers.Map('map', {
+            zoomMethod: null,
             eventListeners: {
                 "movestart": function() {log.push("movestart");},
                 "move": function() {log.push("move");},
@@ -268,7 +270,7 @@
     function test_Map_zoomend_event (t) {
         t.plan(2);
 
-        map = new OpenLayers.Map('map');
+        map = new OpenLayers.Map('map', {zoomMethod: null});
         var baseLayer = new OpenLayers.Layer.WMS("Test Layer", 
             "http://octo.metacarta.com/cgi-bin/mapserv?",
             {map: "/mapdata/vmap_wms.map", layers: "basic"});
@@ -748,7 +750,7 @@
     function test_Map_double_addLayer(t) {
         t.plan(2);
 
-        map = new OpenLayers.Map($('map'));
+        map = new OpenLayers.Map('map');
         layer = new OpenLayers.Layer.WMS('Test Layer', 
                     "http://octo.metacarta.com/cgi-bin/mapserv", 
                     {map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'} 
@@ -928,8 +930,13 @@
         map.setBaseLayer(tmsLayer);
         map.zoomIn();
         map.pan(0, -200, {animate:false});
+        var log = [];
+        map.applyTransform = function(x, y, scale) {
+            log.push([x || map.layerContainerOriginPx.x, y || map.layerContainerOriginPx.y, scale]);
+            OpenLayers.Map.prototype.applyTransform.apply(this, arguments);
+        };
         map.setBaseLayer(wmsLayer);
-        t.eq(map.layerContainerDiv.style.top, "0px", "layerContainer is recentered after setBaseLayer");
+        t.eq(log[0][0], 0, "layerContainer is recentered after setBaseLayer");
         
         map.destroy();
     }
@@ -988,6 +995,11 @@
             move: function() {
                 t.ok(true, "move listener called");
             },
+            movestart: function(e) {
+                t.eq(e.zoomChanged, true, "movestart listener called with expected value");
+            }
+        });
+        baseLayer.events.on({
             moveend: function(e) {
                 t.eq(e.zoomChanged, true, "moveend listener called with expected value");
             }
@@ -1264,7 +1276,8 @@
 
         extent = new OpenLayers.Bounds(8, 44.5, 19, 50);
         var options = {
-            restrictedExtent: extent
+            restrictedExtent: extent,
+            zoomMethod: null
         };
         map = new OpenLayers.Map('map', options);
 
@@ -1302,7 +1315,7 @@
     function test_zoomTo(t) {
         t.plan(8);
         
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {zoomMethod: null});
         map.addLayer(new OpenLayers.Layer(null, {
             isBaseLayer: true
         }));
@@ -1339,6 +1352,38 @@
         map.destroy();
     }
     
+    function test_zoomTo_animated(t) {
+        t.plan(2);
+        
+        var map = new OpenLayers.Map("map");
+        map.addLayer(new OpenLayers.Layer(null, {
+            isBaseLayer: true
+        }));
+        
+        map.zoomToMaxExtent();
+        
+        map.zoomTo(2);
+        map.zoomIn();
+        map.zoomOut();
+        map.zoomIn();
+        t.delay_call(2, function() {
+            t.eq(map.getZoom(), 3, '[fractionalZoom: false] zoomTo(2) - zoomIn() - zoomOut() - zoomIn()');
+
+            // now allow fractional zoom
+            map.fractionalZoom = true;
+
+            map.zoomTo(2.6);
+            map.zoomIn();
+            map.zoomOut();
+            map.zoomIn();
+        });
+        t.delay_call(4, function() {
+            t.eq(map.getZoom(), 3.6, '[fractionalZoom: true] zoomTo(2) - zoomIn() - zoomOut() - zoomIn()');
+            map.destroy();
+        });
+        
+    }
+    
     function test_Map_getUnits(t) {
         t.plan(2);
         var map = new OpenLayers.Map("map");
@@ -1936,7 +1981,7 @@
     }    
 
     function test_moveByPx(t) {
-        t.plan(16);
+        t.plan(14);
 
         var moved;
         var Layer = OpenLayers.Class(OpenLayers.Layer, {
@@ -1956,14 +2001,19 @@
                     {isBaseLayer: false, minResolution:2})
             ]
         });
+        var log = [];
+        map.applyTransform = function(x, y, scale) {
+            log.push([x || map.layerContainerOriginPx.x, y || map.layerContainerOriginPx.y, scale]);
+            OpenLayers.Map.prototype.applyTransform.apply(this, arguments);
+        };
 
         moved = {};
         map.zoomToExtent(new OpenLayers.Bounds(-1, -1, 1, 1));
 
         // check initial state
-        t.eq(map.layerContainerDiv.style.left, '0px',
+        t.eq(log[0][0], 0,
              '[initial state] layer container left correct');
-        t.eq(map.layerContainerDiv.style.top, '0px',
+        t.eq(log[0][1], 0,
              '[initial state] layer container top correct');
         t.eq(moved['base'], undefined,
              '[initial state] base layer not moved');
@@ -1973,9 +2023,9 @@
         // move to a valid position
         moved = {};
         map.moveByPx(-455, 455);
-        t.eq(map.layerContainerDiv.style.left, '455px',
+        t.eq(log[1][0], 455,
              '[valid position] layer container left correct');
-        t.eq(map.layerContainerDiv.style.top, '-455px',
+        t.eq(log[1][1], -455,
              '[valid position] layer container top correct');
         t.eq(moved['base'], true,
              '[valid position] base layer moved');
@@ -1985,10 +2035,8 @@
         // move outside the max extent
         moved = {};
         map.moveByPx(-4500, 4500);
-        t.eq(map.layerContainerDiv.style.left, '455px',
-             '[outside max extent] layer container left correct');
-        t.eq(map.layerContainerDiv.style.top, '-455px',
-             '[outside max extent] layer container top correct');
+        t.eq(log.length, 2,
+             '[outside max extent] layer container offset unchanged');
         t.eq(moved['base'], undefined,
              '[outside max extent] base layer not moved');
         t.eq(moved['outofrange'], undefined,
@@ -1997,10 +2045,8 @@
         // move outside the restricted extent
         moved = {};
         map.moveByPx(-500, 500);
-        t.eq(map.layerContainerDiv.style.left, '455px',
-             '[outside restricted extent] layer container left correct');
-        t.eq(map.layerContainerDiv.style.top, '-455px',
-             '[outside restricted extent] layer container top correct');
+        t.eq(log.length, 2,
+             '[outside restricted extent] layer container offset unchanged');
         t.eq(moved['base'], undefined,
              '[outside restricted extent] base layer not moved');
         t.eq(moved['outofrange'], undefined,
@@ -2024,9 +2070,59 @@
 
         map.zoomToExtent(new OpenLayers.Bounds(-11.25, 0, 11.25, 11.25));
 
+        var log = [];
+        map.applyTransform = function(x, y, scale) {
+            log.push([x || map.layerContainerOriginPx.x, y || map.layerContainerOriginPx.y, scale]);
+            OpenLayers.Map.prototype.applyTransform.apply(this, arguments);
+        };
+
         map.moveByPx(-10, -10);
-        t.eq(map.layerContainerDiv.style.left, '10px', 'layer container left correct');
-        t.eq(map.layerContainerDiv.style.top, '0px', 'layer container top correct');
+        t.eq(log[0][0], 10, 'layer container left correct');
+        t.eq(log[0][1], 0, 'layer container top correct');
+    }
+    
+    function test_applyTransform(t) {
+        t.plan(10);
+        var origStylePrefix = OpenLayers.Util.vendorPrefix.style;
+        OpenLayers.Util.vendorPrefix.style =
+                OpenLayers.Util.vendorPrefix.css =
+                function(key) { return 'transform'; };
+        
+        var map = new OpenLayers.Map('map');
+        map.layerContainerDiv = {style: {}};
+        delete map.applyTransform.transform;
+        delete map.applyTransform.template;
+        var origGetStyle = OpenLayers.Element.getStyle;
+        OpenLayers.Element.getStyle = function() { return 'foo'; }
+        map.applyTransform(1, 2, 3);
+        OpenLayers.Element.getStyle = origGetStyle;
+        t.eq(map.layerContainerDiv.style.transform, 'translate3d(1px,2px,0) scale3d(3,3,1)', '3d transform and scale used when available');
+        
+        delete map.applyTransform.transform;
+        delete map.applyTransform.template;
+        var origIndexOf = String.prototype.indexOf;
+        String.prototype.indexOf = function() { return -1; };
+        map.layerContainerOriginPx = {x: -3, y: 2};
+        map.applyTransform(1, 2, 3);
+        String.prototype.indexOf = origIndexOf;
+        t.eq(map.layerContainerDiv.style.transform, 'translate(4px,0px) scale(3,3)', '2d translate and scale correct');
+        t.eq(map.layerContainerDiv.style.left, '-3px', 'container origin x set as style.left');
+        t.eq(map.layerContainerDiv.style.top, '2px', 'container origin y set as style.top');
+        map.applyTransform(1, 2);
+        t.ok(!map.layerContainerDiv.style.transform, 'no transform set when no transform needed');
+        t.eq(map.layerContainerDiv.style.left, '1px', 'style.left correct when no transform needed');
+        t.eq(map.layerContainerDiv.style.top, '2px', 'style.top correct when no transform needed');
+        
+        map.applyTransform.transform = null;
+        map.applyTransform(4, 5, 6);
+        t.eq(map.layerContainerDiv.style.left, '4px', 'style.left set when transform not available')
+        t.eq(map.layerContainerDiv.style.top, '5px', 'style.top set when transform not available')
+        t.ok(!map.layerContainerDiv.style.transform, 'no transform set, because not supported');
+
+        map.destroy();
+        delete map.applyTransform.transform;
+        delete map.applyTransform.template;
+        OpenLayers.Util.vendorPrefix.style = origStylePrefix;
     }
 
     function test_options(t) {
@@ -2047,7 +2143,7 @@
     }
 
     function test_adjustZoom(t) {
-        t.plan(4);
+        t.plan(5);
         var map = new OpenLayers.Map({
             div: 'map',
             layers: [
@@ -2062,6 +2158,9 @@
         
         t.eq(map.adjustZoom(9), 9, "valid zoom maintained");
         t.eq(map.adjustZoom(1), 2, "zoom adjusted to not exceed world width");
+        
+        map.fractionalZoom = true;
+        t.eq(map.adjustZoom(1).toPrecision(3), "1.29", "zoom adjusted to match world width");
 
         map.moveTo([16, 48], 0);
         t.eq(map.getCenter().toShortString(), "0, 0", "no panning when moveTo is called with invalid zoom");
@@ -2086,6 +2185,66 @@
         var center  = map.getCenter();
         t.ok(center.equals(new OpenLayers.LonLat(-13.25, 56)), "Center is correct and not equal to maxExtent's center");
     }
+    
+    function test_getZoomTargetCenter(t) {
+        t.plan(1);
+        var map = new OpenLayers.Map({
+            div: 'map',
+            layers: [
+                new OpenLayers.Layer('', {isBaseLayer: true})
+            ],
+            center: [0, 0],
+            zoom: 1
+        });
+        
+        var ll = map.getZoomTargetCenter({x: 44, y: 22}, map.getMaxResolution());
+
+        t.eq(ll.toShortString(), "180, -90", "getZoomTargetCenter works.");
+        
+        map.destroy();
+    }
+
+    function test_autoUpdateSize(t) {
+        t.plan(1);
+        OpenLayers.Event.unloadCache();
+        var resizeListener = false;
+        var map = new OpenLayers.Map({
+            autoUpdateSize: false,
+            div: 'map',
+            layers: [
+                new OpenLayers.Layer('name', {
+                    isBaseLayer: true,
+                    wrapDateLine: true
+                })
+            ]
+        });
+        map.setCenter(new OpenLayers.LonLat(-1.3, 50.8), 4);
+        for (var key in OpenLayers.Event.observers) {
+            var obj = OpenLayers.Event.observers[key];
+            for (var i=0, ii=obj.length; i<ii; ++i) {
+                var listener = obj[i];
+                if (listener.name === 'resize' && listener.element === window) {
+                    resizeListener = true;
+                }
+            }
+        }
+        t.eq(resizeListener, map.autoUpdateSize, "resize listener not registered when autoUpdateSize is false");
+        map.destroy();
+    }
+
+    function test_tileManager(t) {
+        t.plan(3);
+        var map = new OpenLayers.Map('map');
+        t.ok(map.tileManager instanceof OpenLayers.TileManager, "Default tileManager created");
+        map.destroy();
+        map = new OpenLayers.Map('map', {tileManager: null});
+        t.ok(map.tileManager === null, "No tileManager created");
+        map.destroy();
+        var options = {cacheSize: 512};
+        map = new OpenLayers.Map('map', {tileManager: options});
+        t.eq(map.tileManager.cacheSize, 512, "cacheSize taken from options");
+        map.destroy();
+    }
 
   </script>
 </head>
diff --git a/tests/Popup.html b/tests/Popup.html
index 2d6a90b..d2a9685 100644
--- a/tests/Popup.html
+++ b/tests/Popup.html
@@ -13,7 +13,7 @@
         popup = new OpenLayers.Popup();
 
         t.ok( popup instanceof OpenLayers.Popup, "new OpenLayers.Popup returns Popup object" );
-        t.ok(OpenLayers.String.startsWith(popup.id, "OpenLayers.Popup"),
+        t.ok(OpenLayers.String.startsWith(popup.id, "OpenLayers_Popup"),
              "valid default popupid");
         var firstID = popup.id;
         t.ok(popup.contentSize.equals(size), "good default popup.size");
@@ -168,8 +168,7 @@
         var bColor = popup.div.style.backgroundColor;
         var goodColor = ( (bColor == color) || (bColor == hexColor));
         t.ok(goodColor, "good default popup.backgroundColor");
-
-        if (navigator.appName.indexOf("Microsoft") == -1) {
+        if (navigator.appName.indexOf("Microsoft") == -1 || new RegExp(/msie 10/).test(navigator.userAgent.toLowerCase())) {
             t.eq(parseFloat(popup.div.style.opacity), opacity, "good default popup.opacity");
         } else {
             t.eq(popup.div.style.filter, "alpha(opacity=" + opacity*100 + ")", "good default popup.opacity");
diff --git a/tests/Popup/Anchored.html b/tests/Popup/Anchored.html
index f53546b..3197e84 100644
--- a/tests/Popup/Anchored.html
+++ b/tests/Popup/Anchored.html
@@ -11,7 +11,7 @@
         popup = new OpenLayers.Popup.Anchored();
 
         t.ok( popup instanceof OpenLayers.Popup.Anchored, "new OpenLayers.Popup.Anchored returns Popup.Anchored object" );
-        t.ok(OpenLayers.String.startsWith(popup.id, "OpenLayers.Popup.Anchored"), "valid default popupid");
+        t.ok(OpenLayers.String.startsWith(popup.id, "OpenLayers_Popup_Anchored"), "valid default popupid");
         var firstID = popup.id;
         t.eq(popup.contentHTML, null, "good default popup.contentHTML");
 
diff --git a/tests/Projection.html b/tests/Projection.html
index 236871a..5864be5 100644
--- a/tests/Projection.html
+++ b/tests/Projection.html
@@ -44,7 +44,7 @@
          // conditionally mock up proj4js
          var hasProj = !!window.Proj4js;
          if (!hasProj) {
-             window.Proj4js = true;
+             window.Proj4js = {};
          }
          proj1.proj = {defData: "+title= WGS84 +foo=bar +x=0"};
          proj2.proj = {defData: "+title=FOO +foo=bar +x=0", srsCode: "FOO"};
diff --git a/tests/Renderer/Canvas.html b/tests/Renderer/Canvas.html
index a1343bb..f9a4c31 100644
--- a/tests/Renderer/Canvas.html
+++ b/tests/Renderer/Canvas.html
@@ -321,9 +321,9 @@
         var cases = [{
             msg: "center of point", x: -100, y: 0, id: layer.features[0].id
         }, {
-            msg: "edge of point", x: -103, y: 3, id: layer.features[0].id
+            msg: "edge of point", x: -106, y: 0, id: layer.features[0].id
         }, {
-            msg: "outside point", x: -110, y: 3, id: null
+            msg: "outside point", x: -110, y: 0, id: null
         }, {
             msg: "center of line", x: 0, y: 0, id: layer.features[1].id
         }, {
diff --git a/tests/Request.html b/tests/Request.html
index 29ced66..cd679c6 100644
--- a/tests/Request.html
+++ b/tests/Request.html
@@ -16,7 +16,35 @@
     function teardown() {
         OpenLayers.Request.XMLHttpRequest = window._xhr;
     }
-    
+
+    function test_defaultHeaders(t) {
+        setup();
+        t.plan(2);
+        var config = {
+            headers: {
+                x: 'y'
+            }
+        };
+        OpenLayers.Request.DEFAULT_CONFIG.headers = {
+            foo: 'bar'
+        };
+        var proto = OpenLayers.Request.XMLHttpRequest.prototype;
+        var issue = OpenLayers.Function.bind(OpenLayers.Request.issue,
+                                             OpenLayers.Request);
+
+        var headers = {};
+        var _setRequestHeader = proto.setRequestHeader;
+        proto.setRequestHeader = function(key, value) {
+            headers[key] = value;
+        };
+        request = issue(config);
+        t.eq(headers.foo, 'bar', "Header from DEFAULT_CONFIG set correctly");
+        t.eq(headers.x, 'y', "Header from config set correctly");
+        proto.setRequestHeader = _setRequestHeader;
+        OpenLayers.Request.DEFAULT_CONFIG.headers = {};
+        teardown();
+    }
+ 
     function test_issue(t) {
         setup();
 
diff --git a/tests/Strategy/BBOX.html b/tests/Strategy/BBOX.html
index 4194b59..6e409e6 100644
--- a/tests/Strategy/BBOX.html
+++ b/tests/Strategy/BBOX.html
@@ -51,7 +51,7 @@
         });
 
         // create a map with the layers and a center
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {zoomMethod: null});
         map.addLayers([dummy, layer]);
         map.zoomToMaxExtent();
         
@@ -112,43 +112,47 @@
     
     function test_events(t) {
         
-        t.plan(3);
-        var log = {
-            loadstart: 0,
-            loadend: 0
-        };
+        t.plan(7);
+
+        var log = [];
+
+        var response = new OpenLayers.Protocol.Response();
 
         var map = new OpenLayers.Map("map");
         var layer = new OpenLayers.Layer.Vector(null, {
             strategies: [new OpenLayers.Strategy.BBOX()],
             protocol: new OpenLayers.Protocol({
                 read: function(config) {
-                    config.callback.call(config.scope, {});
+                    config.callback.call(config.scope, response);
                 }
             }),
             isBaseLayer: true,
             eventListeners: {
-                loadstart: function() {
-                    ++log.loadstart;
+                loadstart: function(event) {
+                    log.push(event);
                 },
-                loadend: function() {
-                    ++log.loadend;
+                loadend: function(event) {
+                    log.push(event);
                 }
             }            
         });
         map.addLayer(layer);
         map.zoomToMaxExtent();
+
+        t.eq(log.length, 2, "2 events logged");
+        t.eq(log[0].type, "loadstart", "loadstart first");
+        t.ok(log[0].filter.type === OpenLayers.Filter.Spatial.BBOX, "loadstart includes filter used");
+        t.eq(log[1].type, "loadend", "loadend second");
+        t.ok(log[1].response == response, "loadend includes response");
         
-        t.eq(log.loadstart, 1, "loadstart triggered");
-        t.eq(log.loadend, 1, "loadend triggered");
-        
-        log = {};
+        var calls = [];
         layer.protocol.read = function(obj) {
-            log.obj = obj;
+            calls.push(obj);
         }
         layer.refresh({force: true, whee: 'chicken'});
 
-        t.eq(log.obj && log.obj.whee, "chicken", "properties passed to read on refresh correctly.");
+        t.eq(calls.length, 1, "1 call to read");
+        t.eq(calls[0].whee, "chicken", "properties passed to read");
 
         map.destroy();
         
@@ -202,7 +206,7 @@
     function test_resFactor(t) {
         t.plan(2);
         
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {zoomMethod: null});
         var bbox = new OpenLayers.Strategy.BBOX();
         var fakeProtocol = new OpenLayers.Protocol({
             'read': function() { 
@@ -277,7 +281,7 @@
         ];
 
         // call merge with a mocked up response
-        strategy.merge({features: features});
+        strategy.merge({features: features, success: OpenLayers.Function.True});
         
         // test that feature geometries have been transformed to map projection
         var from = layer.projection;
@@ -295,7 +299,7 @@
         ];
         
         // call merge again with mocked up response
-        strategy.merge({features: features});
+        strategy.merge({features: features, success: OpenLayers.Function.True});
 
         // test that feature geometries have not been transformed
         t.geom_eq(layer.features[0].geometry, features[0].geometry, "[same proj] feature 0 geometry not transformed");
diff --git a/tests/Strategy/Cluster.html b/tests/Strategy/Cluster.html
index 38cc116..3358ff9 100644
--- a/tests/Strategy/Cluster.html
+++ b/tests/Strategy/Cluster.html
@@ -19,7 +19,7 @@
     }
 
     function test_clusters(t) {
-        t.plan(17);
+        t.plan(22);
 
         function featuresEq(got, exp) {
             var eq = false;
@@ -44,7 +44,8 @@
         });
         var map = new OpenLayers.Map('map', {
             resolutions: [4, 2, 1],
-            maxExtent: new OpenLayers.Bounds(-40, -40, 40, 40)
+            maxExtent: new OpenLayers.Bounds(-40, -40, 40, 40),
+            zoomMethod: null
         });
         map.addLayer(layer);
         
@@ -103,7 +104,24 @@
         // the one feature with no geometry is not added to the layer
         t.eq(layer.features.length, features.length-1, "[1-threshold 100] layer has " + (features.length-1) + " clusters");
         t.ok(featuresEq(layer.features, features.slice(0, 80)), "[1-threshold 100] layer has all features with geometry");
-        
+
+        // remove features and zoom
+        strategy.threshold = 1;
+        map.setCenter(new OpenLayers.LonLat(0, 0), 0);
+        t.eq(strategy.features.length, 81,
+                    "[remove features] cluster has cache");
+        layer.removeAllFeatures();
+        t.eq(layer.features.length, 0,
+                    "[remove features] layer has no features after remove");
+        t.ok(!strategy.features,
+                    "[remove features] cluster has no cache after remove");
+        map.zoomIn();
+        t.eq(layer.features.length, 0,
+                    "[remove features] layer has no features after zoom");
+        t.ok(!strategy.features,
+                    "[remove features] cluster has no cache after zoom");
+
+        map.destroy();
     }
 
     function test_deactivate(t) {
diff --git a/tests/Strategy/Fixed.html b/tests/Strategy/Fixed.html
index 209d8da..a9bf608 100644
--- a/tests/Strategy/Fixed.html
+++ b/tests/Strategy/Fixed.html
@@ -10,7 +10,10 @@
         // a fake protocol
         var protocol = {
             read: function(options) {
-                options.callback.call(options.scope, {features: featureList});
+                options.callback.call(options.scope, {
+                    features: featureList, 
+                    success: OpenLayers.Function.True
+                });
             }
         };
         
@@ -62,44 +65,53 @@
     
     function test_events(t) {
         
-        t.plan(3);
+        t.plan(7);
         
-        var log = {
-            loadstart: 0,
-            loadend: 0
-        };
+        var log = [];
+
+        var response = new OpenLayers.Protocol.Response();
         
         var map = new OpenLayers.Map("map");
         var layer = new OpenLayers.Layer.Vector(null, {
+            filter: new OpenLayers.Filter.Comparison({
+                type: '==',
+                property: 'foo',
+                value: 'bar'
+            }),
             strategies: [new OpenLayers.Strategy.Fixed()],
             protocol: new OpenLayers.Protocol({
                 read: function(config) {
-                    config.callback.call(config.scope, {});
+                    config.callback.call(config.scope, response);
                 }
             }),
             isBaseLayer: true,
             eventListeners: {
-                loadstart: function() {
-                    ++log.loadstart;
+                loadstart: function(event) {
+                    log.push(event);
                 },
-                loadend: function() {
-                    ++log.loadend;
+                loadend: function(event) {
+                    log.push(event);
                 }
             }
         });
 
         map.addLayer(layer);
         map.zoomToMaxExtent();
+
+        t.eq(log.length, 2, "2 events logged");
+        t.eq(log[0].type, "loadstart", "loadstart first");
+        t.eq(log[0].filter, layer.filter, "filter passed on as argument to loadstart");
+        t.eq(log[1].type, "loadend", "loadend second");
+        t.ok(log[1].response == response, "loadend includes response");
         
-        t.eq(log.loadstart, 1, "loadstart triggered");
-        t.eq(log.loadend, 1, "loadend triggered");
-        var log = {};
+        var calls = [];
         layer.protocol.read = function(obj) {
-            log.obj = obj;
+            calls.push(obj);
         }
         layer.refresh({whee: 'chicken'});
 
-        t.eq(log.obj && log.obj.whee, "chicken", "properties passed to read on refresh correctly.");
+        t.eq(calls.length, 1, "1 call to read");
+        t.eq(calls[0].whee, "chicken", "properties passed to read");
         
         map.destroy();
         
@@ -153,7 +165,7 @@
         ];
 
         // call merge with a mocked up response
-        strategy.merge(new OpenLayers.Projection("EPSG:900913"), {features: features});
+        strategy.merge({features: features, success: OpenLayers.Function.True});
         
         // confirm that the original features were destroyed
         t.eq(layer.features.length, 2, "old features destroyed");
@@ -177,7 +189,7 @@
         ];
         
         // call merge again with mocked up response
-        strategy.merge(new OpenLayers.Projection("EPSG:900913"), {features: features});
+        strategy.merge({features: features, success: OpenLayers.Function.True});
 
         // test that feature geometries have not been transformed
         t.geom_eq(layer.features[0].geometry, features[0].geometry, "[same proj] feature 0 geometry not transformed");
@@ -186,7 +198,7 @@
     }
 
     function test_load(t) {
-        t.plan(4);
+        t.plan(3);
 
         // set up
 
@@ -201,8 +213,8 @@
         var response = new OpenLayers.Protocol.Response();
 
         var strategy = new OpenLayers.Strategy.Fixed({
-            merge: function(p, r) {
-                log = {scope: this, projection: p, response: r};
+            merge: function(r) {
+                log = {scope: this, response: r};
             }
         });
 
@@ -226,8 +238,6 @@
              "merge was called");
         t.ok(log.scope == strategy,
              "merge called with expected scope");
-        t.eq(log.projection.getCode(), map.getProjectionObject().getCode(),
-             "merge called the map projection as the first arg");
         t.ok(log.response == response,
              "merge called with response as the first arg");
 
diff --git a/tests/Strategy/Refresh.html b/tests/Strategy/Refresh.html
index f8fb451..054f028 100644
--- a/tests/Strategy/Refresh.html
+++ b/tests/Strategy/Refresh.html
@@ -31,6 +31,21 @@
             "activates registers visibilitychanged listener");
     }
 
+    function test_deactivate(t) {
+        t.plan(3);
+
+        var l = new OpenLayers.Layer.Vector();
+        l.setVisibility(false);
+        var s = new OpenLayers.Strategy.Refresh();
+        s.setLayer(l);
+        s.activate();
+        var deactivated = s.deactivate();
+        t.eq(deactivated, true, "deactivate returns true");
+        t.eq(s.active, false, "deactivated after activate");
+        t.ok(l.events.listeners.visibilitychanged.length == 0,
+            "deactivate unregisters visibilitychanged listener");
+    }
+	
     function test_activateWithVisibleLayer(t) {
         t.plan(5);
 
diff --git a/tests/Test.AnotherWay.baseadditions.js b/tests/Test.AnotherWay.baseadditions.js
index 2354b34..338bf82 100644
--- a/tests/Test.AnotherWay.baseadditions.js
+++ b/tests/Test.AnotherWay.baseadditions.js
@@ -30,6 +30,7 @@ Test.AnotherWay._run_one_onclick = function(){
 // test page loading
 Test.AnotherWay.old_load_next_page = Test.AnotherWay._load_next_page;
 Test.AnotherWay._load_next_page = function(){
+    document.getElementById("test_iframe_el").style.display = "none";
     Test.AnotherWay.update_running_time();    
     Test.AnotherWay.old_load_next_page.apply(this, arguments);
 };
@@ -94,6 +95,19 @@ Test.AnotherWay._add_test_page_url = function(test_url, convention){
     record_select.appendChild(option);
 };
 
+Test.AnotherWay.old_set_iframe_location = Test.AnotherWay._set_iframe_location;
+Test.AnotherWay._set_iframe_location = function(iframe, loc, outside_path_correction){
+    var optionPos = loc.indexOf( "?" ),
+        option;
+    if (optionPos != -1) {
+        option = loc.substring(optionPos+1);
+        loc = loc.substring(0, optionPos);
+    }
+    if (option === "visible") {
+        document.getElementById("test_iframe_el").style.display = "";
+    }
+    return Test.AnotherWay.old_set_iframe_location.call(this, iframe, loc, outside_path_correction);
+};
 
 // new methods
 Test.AnotherWay.update_running_time = function() {
diff --git a/tests/Tile.html b/tests/Tile.html
index ce813cb..087b320 100644
--- a/tests/Tile.html
+++ b/tests/Tile.html
@@ -85,7 +85,7 @@
         var drawn = tile.draw();
         t.eq(log[0], "clear", "tile cleared");
         t.eq(log[1], "beforedraw", "beforedraw event fired");
-        t.eq(drawn, false, "tile not drawn when beforedraw listener returns false");
+        t.eq(drawn, null, "tile not drawn when beforedraw listener returns false");
         drawn = tile.draw(true);
         t.eq(log.length, 2, "no beforedraw event fired and tile not cleared when draw called with 'deferred' argument set to true");
         t.eq(drawn, true, "tile drawn when draw called with 'deferred' argument set to true");
diff --git a/tests/Tile/Image.html b/tests/Tile/Image.html
index 2623dd5..5e4d611 100644
--- a/tests/Tile/Image.html
+++ b/tests/Tile/Image.html
@@ -2,7 +2,7 @@
 <head>
   <script src="../OLLoader.js"></script>
   <script type="text/javascript">
-    // turn off animation frame handling, so we can check img urls in tests
+    // turn off tile queue, so we can check img urls in tests
     delete OpenLayers.Layer.Grid.prototype.queueTileDraw;
 
     var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
@@ -114,7 +114,7 @@
     }
 
     function test_Tile_Image_draw (t) {
-        t.plan(8);
+        t.plan(7);
 
         var map = new OpenLayers.Map('map');
         
@@ -139,16 +139,10 @@
         //this should trigger a "loadstart" event
         tile.draw();
         
-        var img = tile.imgDiv;
-        
         if (!isMozilla)
             t.ok( true, "skipping element test outside of Mozilla");
         else
             t.ok( tile.imgDiv instanceof HTMLElement, "tile.draw creates an image");
-        if (!isMozilla)
-            t.ok( true, "skipping element test outside of Mozilla");
-        else
-            t.ok( img instanceof HTMLImageElement, "tile.draw creates an image");
         var tParams = {
             SERVICE: "WMS", VERSION: "1.1.1",
             REQUEST: "GetMap", STYLES: "",
@@ -159,10 +153,10 @@
         var expected = new Image();
         expected.src =  "../../img/blank.gif?" + OpenLayers.Util.getParameterString(tParams)
         t.delay_call(0.1, function() {
-            t.eq( img.src, expected.src, "tile.draw creates an image");
+            t.eq( tile.imgDiv.src, expected.src, "tile.draw creates an image");
         });
-        t.eq( tile.imgDiv.style.width, "5%", "Image width is correct" );
-        t.eq( tile.imgDiv.style.height, "6%", "Image height is correct" );
+        t.eq( tile.imgDiv.style.width, "5px", "Image width is correct" );
+        t.eq( tile.imgDiv.style.height, "6px", "Image height is correct" );
         t.ok( tile.imgDiv.parentNode === layer.div, "Image is directly appended to the layer div" ); 
 
         // this should trigger a "reload" event (since the image never actually
@@ -178,7 +172,7 @@
         var size = new OpenLayers.Size(5,6);
         var map = new OpenLayers.Map('map');
         var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
-            "../../img/blank.gif", {layers: 'basic'}, {reproject:false, encodeBBOX: true}); 
+            "../../img/blank.gif", {layers: 'basic'}, {encodeBBOX: true});
         map.addLayer(layer);
         tile = new OpenLayers.Tile.Image(layer, position, new OpenLayers.Bounds(-185,-90,-180,90), url, size);
         tile.draw()
@@ -266,14 +260,14 @@
         tile = new OpenLayers.Tile.Image(layer, position, new OpenLayers.Bounds(-90,-85,-90,85), url, size);
         tile.draw();
         tile.moveTo(new OpenLayers.Bounds(-185,-90,-180,-80), new OpenLayers.Pixel(-180,-85), true);
-        t.delay_call( 1, function() { t.eq(tile.imgDiv.style.visibility, "hidden", "Tile image is invisible.") } );
+        t.delay_call( 1, function() { t.ok(!tile.imgDiv, "Reference to tile image removed.") } );
         var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
             "../../img/blank.gif", {layers: 'basic'}, {'alpha':true});
         map.addLayer(layer);
         tile = new OpenLayers.Tile.Image(layer, position, new OpenLayers.Bounds(-90,-85,-90,85), url, size);
         tile.draw();
         tile.moveTo(new OpenLayers.Bounds(-185,-90,-180,-80), new OpenLayers.Pixel(-180,-85), true)
-        t.delay_call( 1, function() { t.eq(tile.imgDiv.style.visibility, "hidden", "Alpha tile image is invisible.") } );
+        t.delay_call( 1, function() { t.ok(!tile.imgDiv, "Reference to alpha tile image removed.") } );
         
     }
 
@@ -288,7 +282,7 @@
                        format: 'image/png'};
 
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         var layer = new OpenLayers.Layer.WMS(name, url, params, {gutter: gutter});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0), 5);
@@ -302,7 +296,7 @@
         map.destroy();
         
         var gutter = 15;
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         var layer = new OpenLayers.Layer.WMS(name, url, params, {gutter: gutter});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0), 5);
@@ -326,7 +320,7 @@
     function test_createBackBuffer(t) {
         t.plan(3);
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
             "../../img/blank.gif", {layers: 'basic'});
         map.addLayer(layer);
@@ -351,7 +345,7 @@
     function test_onImageLoad(t) {
         t.plan(3);
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
             "../../img/blank.gif", {layers: 'basic'}, {opacity: 0.5});
         map.addLayer(layer);
diff --git a/tests/Tile/Image/IFrame.html b/tests/Tile/Image/IFrame.html
index 5dc3af1..192c7c6 100644
--- a/tests/Tile/Image/IFrame.html
+++ b/tests/Tile/Image/IFrame.html
@@ -19,7 +19,7 @@
     
     function test_Tile_Image_IFrame_create (t) {
         t.plan( 3 );
-        map   = new OpenLayers.Map('map');
+        map   = new OpenLayers.Map('map', {tileManager: null});
         var bar = new Array(205).join("1234567890");
         layer = new OpenLayers.Layer.WMS(name, wmsUrl,
                                          {layers: 'basic', foo: bar},
@@ -87,7 +87,7 @@
     function test_Tile_Image_IFrame_createImage (t) {
         t.plan( 9 );
 
-        map   = new OpenLayers.Map('map');
+        map   = new OpenLayers.Map('map', {tileManager: null});
         layer = new OpenLayers.Layer.WMS(name, wmsUrl, {layers: 'basic'}, {tileOptions: {maxGetUrlLength: 0}}); 
         map.addLayer(layer);  
         var tile = layer.addTile(bounds, position);
@@ -96,7 +96,7 @@
         var eventPane = tile.frame.childNodes[0];
 
         t.ok(OpenLayers.String.contains(eventPane.style.backgroundImage,
-                    tile._blankImageUrl),
+                    tile.blankImageUrl),
              "backgroundImage of eventPane is set.");
         t.eq(parseInt(eventPane.style.zIndex, 10), 1, "zIndex of eventPane is set.");
         if(isIElt9) {
diff --git a/tests/Tile/UTFGrid.html b/tests/Tile/UTFGrid.html
index b9f7352..4998adc 100644
--- a/tests/Tile/UTFGrid.html
+++ b/tests/Tile/UTFGrid.html
@@ -32,7 +32,8 @@
             projection: "EPSG:900913",
             layers: [layer],
             center: [0, 0],
-            zoom: 1
+            zoom: 1,
+            tileManager: null
         });
     }
     
diff --git a/tests/TileManager.html b/tests/TileManager.html
new file mode 100644
index 0000000..23398be
--- /dev/null
+++ b/tests/TileManager.html
@@ -0,0 +1,137 @@
+<html>
+<head>
+  <script src="OLLoader.js"></script>
+  <script type="text/javascript">
+  
+    function test_initialize(t) {
+        t.plan(4);
+        
+        var tileManager = new OpenLayers.TileManager();
+        var map = new OpenLayers.Map('map', {
+            zoomMethod: null,
+            tileManager: tileManager
+        });
+        var layer = new OpenLayers.Layer.WMS('WMS1', '../img/blank.gif');
+        map.addLayer(layer);
+        map.setCenter([16, 48], 9);
+        t.ok(tileManager.tileQueue[map.id].length, "Tiles queued from layer");
+        map.removeLayer(layer);
+        t.eq(tileManager.tileQueue[map.id].length, 0, "Tiles unqueued when layer is removed");
+        map.addLayer(new OpenLayers.Layer.WMS('WMS2', '../img/blank.gif'));
+        map.zoomIn();
+        t.ok(tileManager.tileQueue[map.id].length, "Tiles queued from added layer");
+        map.destroy();
+        t.eq(tileManager.tileQueue[map.id], undefined, "Tile queue removed when map was destroyed");
+    }
+    
+    function test_destroy(t) {
+        t.plan(3);
+        
+        var tileManager = new OpenLayers.TileManager();
+        var map = new OpenLayers.Map('map', {tileManager: tileManager});
+        var layer = new OpenLayers.Layer.WMS('WMS', '../img/blank.gif');
+        map.addLayer(layer);
+        map.setCenter([16, 48], 9);
+        var numTileListeners = layer.grid[0][0].events.listeners.beforeload.length;
+        var numLayerListeners = layer.events.listeners.retile.length;
+        var numMapListeners = map.events.listeners.preremovelayer.length;
+        tileManager.destroy();
+        t.eq(layer.grid[0][0].events.listeners.beforeload.length, numTileListeners - 1, "no listener on tile after destroy");
+        t.eq(layer.events.listeners.retile.length, numLayerListeners - 1, "no listeners on layer after destroy");
+        t.eq(map.events.listeners.preremovelayer.length, numMapListeners - 1, "no listeners on map after destroy");
+        map.destroy();
+    }
+
+    function test_manageTileCache(t) {
+        t.plan(10);
+        
+        var tileManager = new OpenLayers.TileManager({
+            cacheSize: 12
+        });
+        var map = new OpenLayers.Map('map', {tileManager: tileManager});
+        layer = new OpenLayers.Layer.WMS('WMS', '../img/blank.gif');
+        map.addLayer(layer);
+        map.setCenter([16, 48], 9);
+        var gridSize;
+        
+        var firstInCache, sharedTile;
+        t.delay_call(2, function() {
+            t.eq(tileManager.tileCacheIndex.length, 12, "tiles cached");
+            t.ok(~OpenLayers.Util.indexOf(tileManager.tileCacheIndex, layer.grid[1][2].url), "tile found in cache");
+            t.ok(tileManager.tileCache[layer.grid[1][2].url] === layer.grid[1][2].imgDiv, "correct object cached");
+            firstInCache = tileManager.tileCache[tileManager.tileCacheIndex[0]];
+            sharedTile = tileManager.tileCache[tileManager.tileCacheIndex[11]];
+            gridSize = layer.div.childNodes.length;
+            map.setCenter([17, 47]);
+        });
+
+        function inCache(img) {
+            var search = img.src.split('?')[1];
+            for (var s in tileManager.tileCache) {
+                if (s.split('?')[1] == search) {
+                    return true;
+                }
+            }
+            return false;
+        }
+
+        t.delay_call(4, function() {
+            t.eq(tileManager.tileCacheIndex.length, 12, "tiles cached");
+            t.ok(tileManager.tileCache[layer.grid[1][2].url] === layer.grid[1][2].imgDiv, "correct object cached");
+            t.ok(!inCache(firstInCache), "old tile discarded");
+            t.ok(inCache(sharedTile), "shared tile still in cache");
+            firstInCache = tileManager.tileCache[tileManager.tileCacheIndex[0]];
+            map.setCenter([16, 48]);
+        });
+        t.delay_call(6, function() {
+            t.ok(!inCache(firstInCache), "old tile discarded");
+            t.ok(inCache(sharedTile), "shared tile still in cache");
+            t.eq(layer.div.childNodes.length, gridSize, 'no unused images left in dom');
+            map.destroy();
+        });
+    }
+    
+    function test_queueTileDraw(t) {
+        t.plan(3);
+
+        var tileManager = new OpenLayers.TileManager();
+        var map = new OpenLayers.Map('map', {tileManager: tileManager});
+        layer = new OpenLayers.Layer.WMS('WMS', '../img/blank.gif');
+        map.addLayer(layer);
+        map.setCenter([0, 0], 3);
+        var queued = tileManager.tileQueue[map.id].length;
+        t.ok(tileManager.tileQueue[map.id].length, "Tiles queued for drawing");
+        map.zoomIn();
+        t.eq(tileManager.tileQueue[map.id].length, queued, "Tile queue has same length after immediate zoom change");
+        t.delay_call(1, function() {
+            t.eq(tileManager.tileQueue[map.id].length, 0, "Tiles from queue processed");        
+            map.destroy();
+        });
+    }
+    
+    function test_deferTileDraw(t) {
+
+        t.plan(3);
+
+        var tileManager = new OpenLayers.TileManager();
+        var map = new OpenLayers.Map('map', {tileManager: tileManager});
+        layer = new OpenLayers.Layer.WMS('WMS', '../img/blank.gif');
+        layer.destroy = function() {}; //we're going to do funky things with the grid
+        layer.applyBackBuffer = function() {}; // backbuffering isn't under test here
+        map.addLayer(layer);
+        map.setCenter([-10, 0], 5);
+        
+        map.moveTo([5, 0]);
+        t.ok(tileManager.tileQueue[map.id].length, "tile loading deferred after moveTo");
+        map.moveTo([0, 0]);
+        t.ok(tileManager.tileQueue[map.id].length, "deferred again after another moveTo");
+        t.delay_call(1, function() {
+            t.eq(tileManager.tileQueue[map.id].length, 0, "tiles loaded after moveDelay");
+        });
+    }
+  </script>
+</head>
+<body>
+<div id="map" style="width:499px;height:549px;display:none"></div>
+</body>
+</html>
diff --git a/tests/Tween.html b/tests/Tween.html
index fdd8fa7..1fbfa3c 100644
--- a/tests/Tween.html
+++ b/tests/Tween.html
@@ -74,6 +74,39 @@
         tween.stop();
         t.ok(tween.animationId != null, "stop method doesn't do anything if tween isn't running");
     }
+    
+    function test_Tween_skip(t) {
+        t.plan(2);
+        
+        var tween = new OpenLayers.Tween();
+        var log = 0;
+        tween.start({count: 0}, {count: 10}, 10, {
+            callbacks: {
+                eachStep: function() {
+                    log++;
+                }
+            },
+            minFrameRate: 10000
+        });
+        
+        t.delay_call(0.8, function() {
+            t.eq(log, 0, 'all frames skipped at a frame rate of 10000');
+            
+            log = 0;
+            tween.start({count: 0}, {count: 10}, 10, {
+                callbacks: {
+                    eachStep: function() {
+                        log++;
+                    }
+                },
+                minFrameRate: 1
+            });
+        });
+        
+        t.delay_call(1.6, function() {
+            t.eq(log, 11, 'no frames skipped at a frame rate of 1');            
+        });
+    }
 
     </script> 
 </head> 
diff --git a/tests/Util.html b/tests/Util.html
index ecb583b..07fa5ed 100644
--- a/tests/Util.html
+++ b/tests/Util.html
@@ -1,10 +1,20 @@
 <html>
 <head>
   <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
-  <script>
-    var custom$ = function() {};
-    window.$ = custom$;
-  </script>
+  <style>
+    body {
+        margin: 0;
+        padding: 0;
+    }
+    #map {
+        position: absolute;
+        top:  1234px;
+        left: 123px;
+    }
+    .test_getRenderedDimensions p{
+        padding: 20px; 
+    }
+  </style>
   <script>
     var OpenLayers = [
         "OpenLayers/BaseTypes/Class.js",
@@ -19,6 +29,7 @@
     ];
   </script>
   <script src="OLLoader.js"></script>
+  <script src="Util_common.js"></script>
   <script type="text/javascript">
     var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
     var map; 
@@ -77,11 +88,6 @@
         t.eq(OpenLayers.Util.isArray(testArray), true, "isArray works");
     }
     
-    function test_$(t) {
-        t.plan(1);
-        t.ok($ === custom$, "OpenLayers doesn't clobber existing definition of $.");
-    }
-    
     function test_Util_getImagesLocation (t) {
         t.plan( 1 );
         t.ok( OpenLayers.Util.getImagesLocation(), "../img/",
@@ -108,10 +114,30 @@
     }
     
     function test_Util_pagePosition(t) {
-        t.plan( 1 );
+        t.plan( 2 );
+
+        // making sure that the test iframe is visible
+        var origDisplay;
+        var parents = window.parent.document.getElementsByTagName('iframe');
+        if (parents.length) {
+            origDisplay = parents[1].parentNode.style.display;
+            // span containing the test iframe is the invisible element
+            parents[1].parentNode.style.display = "";
+        }
+
         var pp = OpenLayers.Util.pagePosition(window);
-        t.eq( pp.toString(), "0,0", "Page position doesn't bail if passed 'window'")
+        t.eq( pp.toString(), "0,0", "Page position doesn't bail if passed 'window'");
+        
+        var mapDiv = document.getElementById("map");
+        var beforeScrollPp = OpenLayers.Util.pagePosition(mapDiv);
+        window.scrollTo(100, 1200);
+        pp = OpenLayers.Util.pagePosition(mapDiv);
+        t.eq(pp, beforeScrollPp, "Page position should work after page has been scrolled");
         
+        // reset test iframe visibility
+        if (parents.length) {
+            parents[1].parentNode.style.display = origDisplay;
+        }
     }
 
     function test_Util_createDiv(t) {
@@ -700,6 +726,12 @@
         t.ok(OpenLayers.String.startsWith(id, "chicken"),
              "OpenLayers.Util.createUniqueID starts id correctly");
     }
+    
+    function test_units(t) {
+        t.plan(2);
+        t.eq(OpenLayers.INCHES_PER_UNIT.m, OpenLayers.INCHES_PER_UNIT.Meter, 'Same inches per m and Meters');
+        t.eq(OpenLayers.INCHES_PER_UNIT.km, OpenLayers.INCHES_PER_UNIT.Kilometer, 'Same inches per km and Kilometers');
+    }
         
     function test_Util_normalizeScale(t) {
         t.plan(2); 
@@ -722,7 +754,7 @@
 
         var scale = 1/150000000; 
         var resolution = OpenLayers.Util.getResolutionFromScale(scale, 'm');
-        t.eq(resolution.toFixed(6), "52916.638092", "Calculated correct resolution for " + scale);
+        t.eq(resolution.toFixed(6), "52916.772500", "Calculated correct resolution for " + scale);
 
         scale = 150000000; 
         resolution = OpenLayers.Util.getResolutionFromScale(scale);
@@ -751,7 +783,7 @@
     }
 
     function test_Util_isEquivalentUrl(t) {
-        t.plan(9);
+        t.plan(10);
         
         var url1, url2, options;
 
@@ -814,6 +846,11 @@
         url2 = new Array(window.location.pathname.split("/").length-1).join("../")+"foo/bar";
         
         t.ok(OpenLayers.Util.isEquivalentUrl(url1, url2), "absolute and relative path without host works for "+url2) 
+
+  //ARGS
+        url1 = "foo.html?bbox=1,2,3,4",
+        url2 = url1;
+        t.ok(OpenLayers.Util.isEquivalentUrl(url1, url2), "equal urls with comma delimited params are equal");
     }
     
     function test_createUrlObject(t) {
@@ -1088,17 +1125,8 @@
     }
     
     function test_getRenderedDimensions(t) {
-        t.plan(2);
-        var content = (new Array(100)).join("foo ");
-        
-        // test with fixed width
-        var fw = OpenLayers.Util.getRenderedDimensions(content, {w: 20});
-        t.eq(fw.w, 20, "got the fixed width");
-        
-        // test with fixed height
-        var fh = OpenLayers.Util.getRenderedDimensions(content, {h: 15});
-        t.eq(fh.h, 15, "got the fixed height");
-        
+        // from <script src="Util_common.js"> and shared by Util_w3c.html
+        com_test_getRenderedDimensions(t); 
     }
 
     function test_toFloat(t) {
diff --git a/tests/Util/vendorPrefix.html b/tests/Util/vendorPrefix.html
new file mode 100644
index 0000000..924ae09
--- /dev/null
+++ b/tests/Util/vendorPrefix.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <title>vendorPrefix.js Tests</title>
+        <script>
+        var div = document.createElement("div");
+        var style = div.style,
+            orgCreateElement = document.createElement;
+            
+        // wrap document.createElement to control property values
+        document.createElement = function(type) {
+            return div;
+        };
+
+        // dependencies for tests
+        var OpenLayers = [
+            "OpenLayers/Util/vendorPrefix.js"
+        ];
+
+        </script>
+        <script src="../OLLoader.js"></script>
+
+        <script>
+        
+        /**
+         * Test vendor prefixing
+         */
+        function test_vendor_prefixes(t) {
+            t.plan(20);
+            var err;
+            
+            function clearCache(type) {
+                var cache = OpenLayers.Util.vendorPrefix[type.replace("style", "js") + "Cache"];
+                for (var key in cache) {
+                    delete cache[key];
+                }
+            }
+            
+            function setStyleMockProp(prop, value) {
+                if (prop && value === undefined) {
+                    delete style[prop];
+                } else if (prop) {
+                    style[prop] = value;
+                }
+            }
+            
+            function curryTestPrefix(type) {
+                return function(standardProp, expectedPrefix, msg) {
+                        var prefixedProp, err;
+                        try {
+                            clearCache(type);
+                            setStyleMockProp(expectedPrefix, "");
+                            prefixedProp = OpenLayers.Util.vendorPrefix[type](standardProp);
+                        } catch(e) {
+                            err = e;
+                        } finally {
+                            setStyleMockProp(expectedPrefix, undefined);
+                        }
+                        
+                        if(!err) {
+                            t.eq(prefixedProp, expectedPrefix, msg);
+                        } else {
+                            t.fail("Error when testing " + type.toUpperCase() + " vendor prefix: " + err.message);
+                        }
+                };
+            }
+            var testDomPrefix = curryTestPrefix("style"),
+                testCssPrefix = curryTestPrefix("css");
+
+            testDomPrefix("unsupported", null, "DOM vendor prefix - unsupported");
+            testCssPrefix("unsupported", null, "CSS vendor prefix - unsupported");
+
+            testDomPrefix("test", "test", "DOM vendor prefix - single word");
+            testCssPrefix("test", "test", "CSS vendor prefix - single word");
+
+            testDomPrefix("testMultiWord", "testMultiWord", "DOM vendor prefix - multiple words");
+            testCssPrefix("test-multi-word", "test-multi-word", "CSS vendor prefix - multiple words");
+
+            testDomPrefix("multiWord", "WebkitMultiWord", "DOM vendor prefix - multiple words for WebKit");
+            testCssPrefix("multi-word", "-webkit-multi-word", "CSS vendor prefix - multiple words for WebKit");
+
+            testDomPrefix("multiWord", "MozMultiWord", "DOM vendor prefix - multiple words for Mozilla");
+            testCssPrefix("multi-word", "-moz-multi-word", "CSS vendor prefix - multiple words for Mozilla");
+
+            testDomPrefix("multiWord", "OMultiWord", "DOM vendor prefix - multiple words for Opera");
+            testCssPrefix("multi-word", "-o-multi-word", "CSS vendor prefix - multiple words for Opera");
+
+            testDomPrefix("multiWord", "msMultiWord", "DOM vendor prefix - multiple words for Internet Explorer");
+            testCssPrefix("multi-word", "-ms-multi-word", "CSS vendor prefix - multiple words for Internet Explorer");
+
+            // test vendor prefix on object
+            clearCache("js");
+            t.eq( OpenLayers.Util.vendorPrefix.js( {}, "unsupported" ), null, "Standard object property - unsupported");
+
+            clearCache("js");
+            t.eq( OpenLayers.Util.vendorPrefix.js( { "test": true }, "test" ), "test", "Standard object property");
+
+            clearCache("js");
+            t.eq( OpenLayers.Util.vendorPrefix.js( { "oTest": true }, "test" ), "oTest", "Standard object property");
+
+            clearCache("js");
+            t.eq( OpenLayers.Util.vendorPrefix.js( { "msTest": true }, "test" ), "msTest", "Standard object property");
+
+            clearCache("js");
+            t.eq( OpenLayers.Util.vendorPrefix.js( { "mozTest": true }, "test" ), "mozTest", "Standard object property");
+
+            clearCache("js");
+            t.eq( OpenLayers.Util.vendorPrefix.js( { "webkitTest": true }, "test" ), "webkitTest", "Standard object property");
+
+            // unwrap document.createElement
+            document.createElement = orgCreateElement;
+        }
+        
+        </script>
+    </head>
+    <body></body>
+</html>
\ No newline at end of file
diff --git a/tests/manual/rendered-dimensions.html b/tests/Util_common.js
similarity index 60%
rename from tests/manual/rendered-dimensions.html
rename to tests/Util_common.js
index 71025af..471b0d6 100644
--- a/tests/manual/rendered-dimensions.html
+++ b/tests/Util_common.js
@@ -1,102 +1,64 @@
-<html>
-<head>
-<style type="text/css">
- .testDims p{
-    padding: 20px; 
-}     
-</style>
-<script src="../../lib/OpenLayers.js"></script>
-<script>
-function run() {
-    var out = document.getElementById("out");    
-    var size = OpenLayers.Util.getRenderedDimensions("<p>Content</p>");
-    var bigger = OpenLayers.Util.getRenderedDimensions("<p>Content</p>", null, {displayClass: 'testDims'});
-    var overflow = OpenLayers.Util.getRenderedDimensions("<p style='overflow:auto'>Content</p>");
-    var width = OpenLayers.Util.getRenderedDimensions("<p>Content</p>", new OpenLayers.Size(250, null));
-    var height = OpenLayers.Util.getRenderedDimensions("<p>Content</p>", new OpenLayers.Size(null, 40));
-    if ((size.w + 40) == bigger.w && (size.h + 40) == bigger.h) {
-        out.innerHTML = "bigger Pass:  " + size + ", " + bigger;
-    } else { 
-        out.innerHTML = "bigger Fail:  " + size + ", " + bigger;
-    }
-
-    if (size.w == overflow.w && size.h == overflow.h) {
-        out.innerHTML += "<br/>overflow Pass:  " + size + ", " + overflow;
-    } else {
-        out.innerHTML += "<br/>overflow Fail:  " + size + ", " + overflow;
-    }
-
-    if (width.w == 250 && width.h == size.h) {
-        out.innerHTML += "<br/>width Pass:  " + size + ", " + width;
-    }
-    else {
-        out.innerHTML += "<br/>width Fail:  " + size + ", " + width;
-    }
-
-    if (height.h == 40 && height.w == size.w) {
-        out.innerHTML += "<br/>height Pass:  " + size + ", " + height;
-    }
-    else {
-        out.innerHTML += "<br/>height Fail:  " + size + ", " + height;
-    }
-    
-    // To use the same syntax as in "\tests"
-    var t = {eq: function(a, b, msg) {
-            if (a == b) {
-                out.innerHTML += "<br/>ok " + msg;
-            }
-            else {
-                out.innerHTML += "<br/><span style=\"color:red\">Fail (" + a + " not eq " + b + "): " + msg + "<span>";
-            }   
-        }
-    };
-    var text = (new Array(10)).join("foo foo foo <br>"),
-        content = "<div>" + text + "</div>";
-    var testName,
-        finalSize,
-        initialSize = OpenLayers.Util.getRenderedDimensions(content, null);
-    // containerElement option on absolute position with width and height
-    testName = "Absolute with w&h: ";
-    var optionAbsDiv ={
-        containerElement: document.getElementById("absoluteDiv")
-    };
-    finalSize = OpenLayers.Util.getRenderedDimensions(content, null, optionAbsDiv);
-    t.eq(finalSize.w, initialSize.w, 
-                testName + "initial width " + initialSize.w + "px is maintained");
-     t.eq(finalSize.h, initialSize.h, 
-                testName + "initial height " + initialSize.h + "px is maintained");
-    testName = "Absolute with w&h (set height): ";
-    finalSize = OpenLayers.Util.getRenderedDimensions(content, {h: 15}, optionAbsDiv);
-    t.eq(finalSize.h, 15, testName + "got the fixed height to 15px");
-    t.eq(finalSize.w, initialSize.w, 
-                testName + "initial width " + initialSize.w + "px is maintained");
-    testName = "Absolute with w&h (set width): ";
-    finalSize = OpenLayers.Util.getRenderedDimensions(content, {w: 20}, optionAbsDiv);
-    t.eq(finalSize.w, 20, testName + "got the fixed width to 20px");
-    // containerElement option on absolute position without width and height
-    testName = "Absolute without w&h: ";
-    var optionAbsDiv00 ={
-        containerElement: document.getElementById("absoluteDiv00")
-    };
-    finalSize = OpenLayers.Util.getRenderedDimensions(content, null, optionAbsDiv00);
-    t.eq(finalSize.w, initialSize.w, 
-                testName + "initial width " + initialSize.w + "px is maintained");
-    t.eq(finalSize.h, initialSize.h, 
-                testName + "initial height " + initialSize.h + "px is maintained");
-    testName = "Absolute without w&h (set height): ";
-    finalSize = OpenLayers.Util.getRenderedDimensions(content, {h: 15}, optionAbsDiv00);
-    t.eq(finalSize.h, 15, testName + "got the fixed height to 15px");
-    t.eq(finalSize.w, initialSize.w, 
-                testName + "initial width " + initialSize.w + "px is maintained");
-    testName = "Absolute without w&h (set width): ";
-    finalSize = OpenLayers.Util.getRenderedDimensions(content, {w: 20}, optionAbsDiv00);
-    t.eq(finalSize.w, 20, testName + "got the fixed width to 20px");
-} 
-</script>
-</head>
-<body onload="run()">
-<div id="out"></div>
-<div id="absoluteDiv" style="position:absolute; left:10px; width:500px; height: 500px"></div>
-<div id="absoluteDiv00" style="position:absolute; left:10px;"></div>
-</body>
-</html>
+function com_test_getRenderedDimensions(t) {
+    t.plan(17);
+    var content = (new Array(100)).join("foo ");
+    
+    // test with fixed width
+    var fw = OpenLayers.Util.getRenderedDimensions(content, {w: 20});
+    t.eq(fw.w, 20, "got the fixed width");
+    
+    // test with fixed height
+    var fh = OpenLayers.Util.getRenderedDimensions(content, {h: 15});
+    t.eq(fh.h, 15, "got the fixed height");        
+    
+    var size = OpenLayers.Util.getRenderedDimensions("<p>Content</p>");
+    var bigger = OpenLayers.Util.getRenderedDimensions("<p>Content</p>", null, {displayClass: 'test_getRenderedDimensions'});
+    var overflow = OpenLayers.Util.getRenderedDimensions("<p style='overflow:auto'>Content</p>");
+    var width = OpenLayers.Util.getRenderedDimensions("<p>Content</p>", new OpenLayers.Size(250, null));
+    var height = OpenLayers.Util.getRenderedDimensions("<p>Content</p>", new OpenLayers.Size(null, 40));
+    t.ok((size.w + 40) == bigger.w && (size.h + 40) == bigger.h, "bigger Pass:  " + size + ", " + bigger);
+    t.ok(size.w == overflow.w && size.h == overflow.h, "overflow Pass:  " + size + ", " + overflow);
+    t.ok(width.w == 250 && width.h == size.h, "width Pass:  " + size + ", " + width);
+    t.ok(height.h == 40 && height.w == size.w, "height Pass:  " + size + ", " + height);
+    
+    content = (new Array(10)).join("foo foo foo <br>");
+    var testName,
+        finalSize,
+        initialSize = OpenLayers.Util.getRenderedDimensions(content, null);
+    // containerElement option on absolute position with width and height
+    testName = "Absolute with w&h: ";
+    var optionAbsDiv ={
+        containerElement: document.getElementById("absoluteDiv")
+    };
+    finalSize = OpenLayers.Util.getRenderedDimensions(content, null, optionAbsDiv);
+    t.ok(initialSize.w > 0 && initialSize.h > 0, "Has initial size (requires visible test_iframe)");
+    t.eq(finalSize.w, initialSize.w, 
+                testName + "initial width " + initialSize.w + "px is maintained");
+     t.eq(finalSize.h, initialSize.h, 
+                testName + "initial height " + initialSize.h + "px is maintained");
+    testName = "Absolute with w&h (set height): ";
+    finalSize = OpenLayers.Util.getRenderedDimensions(content, {h: 15}, optionAbsDiv);
+    t.eq(finalSize.h, 15, testName + "got the fixed height to 15px");
+    t.eq(finalSize.w, initialSize.w, 
+                testName + "initial width " + initialSize.w + "px is maintained");
+    testName = "Absolute with w&h (set width): ";
+    finalSize = OpenLayers.Util.getRenderedDimensions(content, {w: 20}, optionAbsDiv);
+    t.eq(finalSize.w, 20, testName + "got the fixed width to 20px");
+    // containerElement option on absolute position without width and height
+    testName = "Absolute without w&h: ";
+    var optionAbsDiv00 ={
+        containerElement: document.getElementById("absoluteDiv00")
+    };
+    finalSize = OpenLayers.Util.getRenderedDimensions(content, null, optionAbsDiv00);
+    t.eq(finalSize.w, initialSize.w, 
+                testName + "initial width " + initialSize.w + "px is maintained");
+    t.eq(finalSize.h, initialSize.h, 
+                testName + "initial height " + initialSize.h + "px is maintained");
+    testName = "Absolute without w&h (set height): ";
+    finalSize = OpenLayers.Util.getRenderedDimensions(content, {h: 15}, optionAbsDiv00);
+    t.eq(finalSize.h, 15, testName + "got the fixed height to 15px");
+    t.eq(finalSize.w, initialSize.w, 
+                testName + "initial width " + initialSize.w + "px is maintained");
+    testName = "Absolute without w&h (set width): ";
+    finalSize = OpenLayers.Util.getRenderedDimensions(content, {w: 20}, optionAbsDiv00);
+    t.eq(finalSize.w, 20, testName + "got the fixed width to 20px");
+}
diff --git a/tests/Util_w3c.html b/tests/Util_w3c.html
new file mode 100644
index 0000000..457341f
--- /dev/null
+++ b/tests/Util_w3c.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
+  <style type="text/css">
+        .test_getRenderedDimensions p{
+            padding: 20px; 
+        }     
+  </style>
+  <script>
+    var OpenLayers = [
+        "OpenLayers/BaseTypes/Class.js",
+        "OpenLayers/Util.js",
+        "OpenLayers/BaseTypes.js",
+        "OpenLayers/BaseTypes/Element.js",
+        "OpenLayers/BaseTypes/LonLat.js",
+        "OpenLayers/BaseTypes/Pixel.js",
+        "OpenLayers/BaseTypes/Size.js",
+        "OpenLayers/Lang.js",
+        "OpenLayers/Console.js"
+    ];
+  </script>
+  <script src="OLLoader.js"></script>
+  <script src="Util_common.js"></script>
+  <script type="text/javascript">
+    function test_getRenderedDimensions(t) {
+        // from <script src="Util_common.js"> and shared by Util.html
+        com_test_getRenderedDimensions(t);
+    }
+  </script>
+</head>
+<body>
+    <div id="map" style="width: 1024px; height: 512px;"/>
+</body>
+</html>
diff --git a/tests/WPSClient.html b/tests/WPSClient.html
new file mode 100644
index 0000000..34b21f9
--- /dev/null
+++ b/tests/WPSClient.html
@@ -0,0 +1,108 @@
+<html>
+<head>
+  <script src="OLLoader.js"></script>
+  <script type="text/javascript">
+  
+  var client;
+  
+  function test_initialize(t) {
+      t.plan(3);
+      
+      client = new OpenLayers.WPSClient({
+          servers: {
+              local: "/geoserver/wps"
+          }
+      });
+      
+      t.ok(client instanceof OpenLayers.WPSClient, 'creates an instance');
+      t.ok(client.events, 'has an events instance');
+      t.eq(client.servers.local.url, '/geoserver/wps', 'servers stored on instance');
+  }
+  
+  function test_getProcess(t) {
+      t.plan(4);
+
+      client = new OpenLayers.WPSClient({
+          servers: {
+              local: "/geoserver/wps"
+          },
+          lazy: true
+      });
+
+      var process = client.getProcess('local', 'gs:splitPolygon');
+      t.ok(process instanceof OpenLayers.WPSProcess, 'creates a process');
+      t.ok(process.client === client, 'process knows about client');
+      t.eq(process.server, 'local', 'process created with correct server');
+      t.eq(process.identifier, 'gs:splitPolygon', 'process created with correct identifier');
+      
+  }
+  
+  function test_describeProcess(t) {
+      t.plan(6);
+      var log = {request: [], event: []};
+      var originalGET = OpenLayers.Request.GET;
+      OpenLayers.Request.GET = function(cfg) {
+          log.request.push(cfg);
+      }      
+      function describe(evt) {
+            log.event.push(evt);
+        }
+      client.events.register('describeprocess', this, describe);
+
+      process = client.getProcess('local', 'gs:splitPolygon');
+      t.eq(client.servers.local.processDescription['gs:splitPolyon'], null, 'describeProcess pending'); 
+      process.describe();
+      t.eq(log.request.length, 1, 'describeProcess request only sent once');
+      log.request[0].success.call(client, {
+          responseText: '<?xml version="1.0" encoding="UTF-8"?><wps:ProcessDescriptions xmlns:wps="http://www.opengis.net/wps/1.0.0"></wps:ProcessDescriptions>'
+      });
+      t.eq(log.event[0].type, 'describeprocess', 'describeprocess event triggered');
+      t.ok(client.servers.local.processDescription['gs:splitPolygon'], 'We have a process description!');
+      process.describe();
+      t.eq(log.request.length, 1, 'describeProcess request only sent once');
+      t.eq(log.event.length, 1, 'describeprocess event only triggered once');
+      
+      OpenLayers.Request.GET = originalGET;
+      client.events.unregister('describeprocess', this, describe);
+  }
+  
+  function test_execute(t) {
+      t.plan(1);
+
+      client = new OpenLayers.WPSClient({
+          servers: {
+              local: "/geoserver/wps"
+          },
+          lazy: true
+      });
+      var log = [];
+      client.getProcess = function() {
+          return {
+              execute: function(options) {
+                  log.push(options);
+              }
+          }
+      }
+      
+      client.execute({inputs: 'a', success: 'b', scope: 'c'});
+      t.eq(log[0], {inputs: 'a', success: 'b', scope: 'c'}, "process executed with correct options");   
+  }
+  
+  function test_destroy(t) {
+      t.plan(2);
+      client = new OpenLayers.WPSClient({
+          servers: {
+              local: "/geoserver/wps"
+          },
+          lazy: true
+      });
+      client.destroy();
+      t.eq(client.events, null, "Events nullified");
+      t.eq(client.servers, null, "Servers nullified");
+  }
+
+  </script>
+</head>
+<body>
+</body>
+</html>
diff --git a/tests/WPSProcess.html b/tests/WPSProcess.html
new file mode 100644
index 0000000..f668ca3
--- /dev/null
+++ b/tests/WPSProcess.html
@@ -0,0 +1,188 @@
+<html>
+<head>
+  <script src="OLLoader.js"></script>
+  <script type="text/javascript">
+
+  var wkt = new OpenLayers.Format.WKT();
+  var process;
+  var client = new OpenLayers.WPSClient({
+      servers: {
+          local: 'geoserver/wps'
+      }
+  });
+  client.servers.local.processDescription = {
+      'JTS:intersection': '<?xml version="1.0" encoding="UTF-8"?>' +
+          '<wps:ProcessDescriptions xml:lang="en" service="WPS" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink"><ProcessDescription wps:processVersion="1.0.0" statusSupported="true" storeSupported="true"><ows:Identifier>JTS:intersection< [...]
+  };
+  
+  function test_initialize(t) {
+      t.plan(1);
+      process = new OpenLayers.WPSProcess();
+      t.ok(process instanceof OpenLayers.WPSProcess, 'creates an instance');
+  }
+  
+  function test_describe(t) {
+      t.plan(2);
+      process = client.getProcess('local', 'JTS:intersection');
+      var log = [];
+      process.describe({
+          callback: function(description) { log.push(description); }
+      });
+      t.delay_call(0.1, function() {
+          t.eq(log.length, 1, 'callback called');
+          t.eq(log[0].identifier, 'JTS:intersection', 'callback called with correct description');
+      });
+  }
+  
+  function test_execute(t) {
+      t.plan(7);
+      
+      var log = [];
+      var originalPOST = OpenLayers.Request.POST;
+      OpenLayers.Request.POST = function(cfg) {
+          log.push(cfg);
+          cfg.success.call(cfg.scope, {responseText: ''});
+      }
+      
+      process = new OpenLayers.WPSProcess({
+          client: client,
+          server: 'local',
+          identifier: 'gs:splitPolygon'
+      });
+      process.description = {
+          dataInputs: [{
+              identifier: 'line',
+              complexData: {
+                  supported: {
+                      formats: {'application/wkt': true}
+                  }
+              }
+          }, {
+              identifier: 'polygon',
+              complexData: {
+                  supported: {
+                      formats: {'application/wkt': true}
+                  }
+              }
+          }],
+          processOutputs: [{
+              identifier: 'foo',
+              complexOutput: {
+                  supported: {
+                      formats: {'application/wkt': true}
+                  }
+              }
+          }]
+      };
+      var line = 'LINESTRING(117 22,112 18,118 13,115 8)';
+      var polygon = 'POLYGON((110 20,120 20,120 10,110 10,110 20),(112 17,118 18,118 16,112 15,112 17))';
+      var output = [];
+      function success(result) {
+          output.push(result);
+      }
+      // configured with output identifier
+      process.execute({
+          inputs: {
+              line: wkt.read(line),
+              polygon: wkt.read(polygon)
+          },
+          output: 'foo',
+          success: success
+      });
+      // configured without output identifier
+      process.execute({
+          inputs: {
+              line: wkt.read(line),
+              polygon: wkt.read(polygon)
+          },
+          success: success
+      });
+      
+      t.delay_call(0.1, function() {
+          t.eq(log.length, 2, 'Two execute requests sent');
+          t.eq(process.description.dataInputs[0].data.complexData.value, line, 'data for first input correct');
+          t.eq(process.description.dataInputs[0].data.complexData.mimeType, 'application/wkt', 'format for first input correct');
+          t.eq(process.description.responseForm.rawDataOutput.identifier, 'foo', 'correct identifier for responseForm');
+          t.eq(process.description.responseForm.rawDataOutput.mimeType, 'application/wkt', 'correct format for responseForm');
+          t.ok('foo' in output[0], 'process result contains output with correct identifier when configured with output');
+          t.ok('result' in output[1], 'process result contains output with correct identifier when configured without output');
+
+          OpenLayers.Request.POST = originalPOST;
+      });      
+  }
+  
+  function test_chainProcess(t) {
+      t.plan(5);
+      
+      var originalGET = OpenLayers.Request.GET;
+      OpenLayers.Request.GET = function(cfg) {
+          window.setTimeout(function() {
+              cfg.success.call(cfg.scope, {
+                  responseText: '<?xml version="1.0" encoding="UTF-8"?>' +
+                      '<wps:ProcessDescriptions xml:lang="en" service="WPS" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink"><ProcessDescription wps:processVersion="1.0.0" statusSupported="true" storeSupported="true"><ows:Identifier>JTS:b [...]
+              });
+          }, 100);
+      }
+      var originalPOST = OpenLayers.Request.POST;
+      OpenLayers.Request.POST = function(cfg) {
+          cfg.success.call(cfg.scope, {responseText: ''});
+      };
+
+      var intersect = client.getProcess('local', 'JTS:intersection');    
+      intersect.configure({
+          inputs: {
+              a: wkt.read(
+                     'LINESTRING(117 22,112 18,118 13,115 8)'
+                 ),
+              b: wkt.read(
+                     'POLYGON((110 20,120 20,120 10,110 10,110 20),(112 17,118 18,118 16,112 15,112 17))'
+                 )
+          }
+      });
+
+      // one buffer process to make sure chaining works
+      var buffer1 = client.getProcess('local', 'JTS:buffer');
+      // another buffer process to make sure that things work asynchronously
+      var buffer2 = client.getProcess('local', 'JTS:buffer');
+      var log = [];
+      buffer1.chainProcess = buffer2.chainProcess = function() {
+          log.push(this.executeCallbacks.length);
+          OpenLayers.WPSProcess.prototype.chainProcess.apply(this, arguments);
+      };
+      var done1 = done2 = false;
+      buffer1.execute({
+          inputs: {
+              geom: intersect.output(),
+              distance: 1
+          },
+          success: function(outputs) {
+              done1 = true;
+          }
+      });
+      buffer2.execute({
+          inputs: {
+              geom: intersect.output(),
+              distance: 2
+          },
+          success: function(outputs) {
+              done2 = true;
+          }
+      });
+      
+      t.delay_call(0.5, function() {
+          t.eq(log.length, 2, 'chainProcess called once for each process');
+          t.eq(log[0], 1, 'executeCallback queued to wait for 1 chained process');
+          t.eq(log[1], 1, 'executeCallback queued to wait for 1 chained process');
+          t.eq(done1, true, 'execute for buffer1 process successfully completed');
+          t.eq(done2, true, 'execute for buffer2 process successfully completed');
+
+          OpenLayers.Request.GET = originalGET;
+          OpenLayers.Request.POST = originalPOST;
+      });
+  }
+
+  </script>
+</head>
+<body>
+</body>
+</html>
diff --git a/tests/deprecated/Layer/MapServer.html b/tests/deprecated/Layer/MapServer.html
index 27ce63d..d65fef6 100644
--- a/tests/deprecated/Layer/MapServer.html
+++ b/tests/deprecated/Layer/MapServer.html
@@ -23,7 +23,7 @@
             t.debug_print("Can't test google reprojection in Opera or Safari.");
         } else if(validkey) {
             t.plan(5);
-            var map = new OpenLayers.Map('map');
+            var map = new OpenLayers.Map('map', {tileManager: null});
             var layer = new OpenLayers.Layer.Google("Google");
             map.addLayer(layer);
             layer = new OpenLayers.Layer.MapServer(name, url, params, {reproject: true, isBaseLayer: false, buffer: 2});
@@ -31,11 +31,10 @@
             map.addLayer(layer);
             map.setCenter(new OpenLayers.LonLat(0,0), 5);
             var tile = layer.grid[0][0];
-            tile.draw(true); // the tile queue defers the drawing
-            t.eq( tile.bounds.left, -22.5, "left side matches" ); 
-            t.eq( tile.bounds.right, -11.25, "top side matches" ); 
-            t.eq( tile.bounds.bottom.toFixed(6), '11.178402', "bottom side matches" ); 
-            t.eq( tile.bounds.top.toFixed(6), '21.943046', "top side matches" );
+            t.eq( tile.bounds.left, -22.5, "left side matches" );
+            t.eq( tile.bounds.right, -11.25, "right side matches" );
+            t.eq( tile.bounds.bottom.toFixed(6), '11.781325', "bottom side matches" );
+            t.eq( tile.bounds.top.toFixed(6), '22.512557', "top side matches" );
             map.destroy();
         } else {
             t.plan(1);
@@ -43,7 +42,7 @@
                           window.location.host);
         }
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         layer = new OpenLayers.Layer.MapServer(name, url, params, {buffer:2});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0), 5);
diff --git a/tests/deprecated/Layer/MapServer/Untiled.html b/tests/deprecated/Layer/MapServer/Untiled.html
index c3f9c44..f235492 100644
--- a/tests/deprecated/Layer/MapServer/Untiled.html
+++ b/tests/deprecated/Layer/MapServer/Untiled.html
@@ -5,9 +5,6 @@
     <script src="../../../../lib/deprecated.js"></script>
     <script type="text/javascript">
 
-    // turn off animation frame handling, so we can check img urls in tests
-    delete OpenLayers.Layer.Grid.prototype.queueTileDraw;
-
     var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
     var layer; 
 
@@ -72,7 +69,7 @@
     function test_Layer_MapServer_Untiled_mergeNewParams (t) {
         t.plan( 5 );
 
-        var map = new OpenLayers.Map("map");
+        var map = new OpenLayers.Map("map", {tileManager: null});
         var url = "http://labs.metacarta.com/cgi-bin/mapserv";
         layer = new OpenLayers.Layer.MapServer.Untiled(name, url, params);
         
diff --git a/tests/deprecated/Layer/WMS.html b/tests/deprecated/Layer/WMS.html
index 523d6ee..43977c8 100644
--- a/tests/deprecated/Layer/WMS.html
+++ b/tests/deprecated/Layer/WMS.html
@@ -1,3 +1,4 @@
+<!DOCTYPE html>
 <html>
 <head>
     <!-- this gmaps key generated for http://openlayers.org/dev/ -->
@@ -22,7 +23,7 @@
         } else if(validkey) {
             t.plan(5);
 
-            var map = new OpenLayers.Map('map');
+            var map = new OpenLayers.Map('map', {tileManager: null});
             var layer = new OpenLayers.Layer.Google("Google");
             map.addLayer(layer);
             var wmslayer = new OpenLayers.Layer.WMS(name, url, params,
@@ -31,11 +32,10 @@
             map.addLayer(wmslayer);
             map.setCenter(new OpenLayers.LonLat(0,0), 5);
             var tile = wmslayer.grid[0][0];
-            tile.draw(true); // the tile queue defers the drawing
             t.eq( tile.bounds.left, -22.5, "left side matches" );
             t.eq( tile.bounds.right, -11.25, "right side matches" );
-            t.eq( tile.bounds.bottom.toFixed(6), '11.178402', "bottom side matches" );
-            t.eq( tile.bounds.top.toFixed(6), '21.943046', "top side matches" );
+            t.eq( tile.bounds.bottom.toFixed(6), '11.781325', "bottom side matches" );
+            t.eq( tile.bounds.top.toFixed(6), '22.512557', "top side matches" );
             map.destroy();
         } else {
             t.plan(1);
@@ -43,7 +43,7 @@
                           window.location.host);
         }
 
-        var map = new OpenLayers.Map('map');
+        var map = new OpenLayers.Map('map', {tileManager: null});
         layer = new OpenLayers.Layer.WMS(name, url, params, {buffer: 2});
         map.addLayer(layer);
         map.setCenter(new OpenLayers.LonLat(0,0), 5);
diff --git a/tests/Popup/AnchoredBubble.html b/tests/deprecated/Popup/AnchoredBubble.html
similarity index 80%
rename from tests/Popup/AnchoredBubble.html
rename to tests/deprecated/Popup/AnchoredBubble.html
index bd2d812..ffad069 100644
--- a/tests/Popup/AnchoredBubble.html
+++ b/tests/deprecated/Popup/AnchoredBubble.html
@@ -1,9 +1,11 @@
 <html>
 <head>
-  <script src="../OLLoader.js"></script>
+  <script src="../../OLLoader.js"></script>
+  <script src="../../../lib/Rico/Corner.js"></script>
+  <script src="../../../lib/deprecated.js"></script>
   <script type="text/javascript">
 
-   function test_Popup_Anchored_setOpacity(t) { 
+   function test_Popup_Anchored_setOpacity(t) {
         t.plan(5);
         var opacity = 0.5;
         var id = "chicken";
@@ -32,7 +34,7 @@
         popup.setOpacity(opacity);
         popup.draw(new OpenLayers.Pixel(x, y));
 
-        if (navigator.appName.indexOf("Microsoft") == -1) {
+        if (navigator.appName.indexOf("Microsoft") == -1 || new RegExp(/msie 10/).test(navigator.userAgent.toLowerCase())) {
             t.eq(parseFloat(popup.div.style.opacity), opacity, "good default popup.opacity");
         } else {
             t.eq(popup.div.style.filter, "alpha(opacity=" + opacity*100 + ")", "good default popup.opacity");
@@ -43,12 +45,12 @@
         t.ok(popup.groupDiv.parentNode.getElementsByTagName("span").length > 0, "popup.groupDiv.parentNode has SPAN children");
 
         var ricoCornerDiv = popup.groupDiv.parentNode.getElementsByTagName("span")[0];
-        if (navigator.appName.indexOf("Microsoft") == -1) {
+        if (navigator.appName.indexOf("Microsoft") == -1 || new RegExp(/msie 10/).test(navigator.userAgent.toLowerCase())) {
             t.eq(parseFloat(ricoCornerDiv.style.opacity), opacity, "good default ricoCornerDiv.opacity");
         } else {
             t.eq(ricoCornerDiv.style.filter, "alpha(opacity=" + opacity*100 + ")", "good default ricoCornerDiv.opacity");
         }
-        
+
    }
 
   </script>
diff --git a/tests/deprecated/Util.html b/tests/deprecated/Util.html
new file mode 100644
index 0000000..e65340b
--- /dev/null
+++ b/tests/deprecated/Util.html
@@ -0,0 +1,20 @@
+<html>
+    <head>
+        <script>
+var custom$ = function() {};
+window.$ = custom$;
+        </script>
+        <script src="../OLLoader.js"></script>
+        <script src="../../lib/deprecated.js"></script>
+        <script>
+        
+function test_$(t) {
+    t.plan(1);
+    t.ok($ === custom$, "OpenLayers doesn't clobber existing definition of $.");
+}
+            
+        </script>
+    </head>
+    <body>
+    </body>
+</html>
\ No newline at end of file
diff --git a/tests/list-tests.html b/tests/list-tests.html
index 283bc69..c353755 100644
--- a/tests/list-tests.html
+++ b/tests/list-tests.html
@@ -49,8 +49,10 @@
     <li>Control/PanPanel.html</li>
     <li>Control/SLDSelect.html</li>
     <li>Control/Zoom.html</li>
+    <li>Control/ZoomBox.html</li>
     <li>Events.html</li>
     <li>Events/buttonclick.html</li>
+    <li>Events/featureclick.html?visible</li>
     <li>Extras.html</li>
     <li>Feature.html</li>
     <li>Feature/Vector.html</li>
@@ -65,6 +67,7 @@
     <li>Format/XML/VersionedOGC.html</li>
     <li>Format/ArcXML/Features.html</li>
     <li>Format/CQL.html</li>
+    <li>Format/EncodedPolyline.html</li>
     <li>Format/GeoJSON.html</li>
     <li>Format/GeoRSS.html</li>
     <li>Format/GML.html</li>
@@ -83,6 +86,8 @@
     <li>Format/Filter/v1_0_0.html</li>
     <li>Format/Filter/v1_1_0.html</li>
     <li>Format/QueryStringFilter.html</li>
+    <li>Format/WCSCapabilities.html</li>
+    <li>Format/WCSCapabilities/v1.html</li>
     <li>Format/WFS.html</li>
     <li>Format/WFSCapabilities.html</li>
     <li>Format/WFSCapabilities/v1.html</li>
@@ -187,9 +192,8 @@
     <li>SingleFile1.html</html>
     <li>SingleFile2.html</html>
     <li>SingleFile3.html</html>
-    <li>Popup.html</li>
+    <li>Popup.html?visible</li>
     <li>Popup/Anchored.html</li>
-    <li>Popup/AnchoredBubble.html</li>
     <li>Popup/FramedCloud.html</li>
     <li>Projection.html</li>
     <li>Protocol.html</li>
@@ -227,10 +231,16 @@
     <li>Tile/Image.html</li>
     <li>Tile/Image/IFrame.html</li>
     <li>Tile/UTFGrid.html</li>
+    <li>TileManager.html?visible</li>
     <li>Tween.html</li>
     <li>Kinetic.html</li>
-    <li>Util.html</li>
+    <li>Util.html?visible</li>
+    <li>Util_w3c.html?visible</li>
+    <li>Util/vendorPrefix.html</li>
+    <li>WPSClient.html</li>
+    <li>WPSProcess.html</li>
     <li>deprecated/Ajax.html</li>
+    <li>deprecated/Util.html</li>
     <li>deprecated/BaseTypes/Class.html</li>
     <li>deprecated/BaseTypes/Element.html</li>
     <li>deprecated/Control/MouseToolbar.html</li>
@@ -241,6 +251,7 @@
     <li>deprecated/Layer/WFS.html</li>
     <li>deprecated/Layer/WMS.html</li>
     <li>deprecated/Layer/WMS/Post.html</li>
+    <li>deprecated/Popup/AnchoredBubble.html</li>
     <li>deprecated/Protocol/SQL.html</li>
     <li>deprecated/Protocol/SQL/Gears.html</li>
     <li>deprecated/Renderer/SVG2.html</li>
diff --git a/tests/manual/google-tilt.html b/tests/manual/google-tilt.html
index f89e560..d0b2ed6 100644
--- a/tests/manual/google-tilt.html
+++ b/tests/manual/google-tilt.html
@@ -6,7 +6,6 @@
     <meta name="apple-mobile-web-app-capable" content="yes">
         <title>OpenLayers Google (v3) Layer Example</title>
         <link rel="stylesheet" href="../../theme/default/style.css" type="text/css">
-        <link rel="stylesheet" href="../../theme/default/google.css" type="text/css">
         <link rel="stylesheet" href="../../examples/style.css" type="text/css">
         <script src="http://maps.google.com/maps/api/js?v=3.6&sensor=false"></script>
         <script src="../../lib/OpenLayers.js"></script>
diff --git a/tests/manual/map-events.html b/tests/manual/map-events.html
new file mode 100644
index 0000000..3695e82
--- /dev/null
+++ b/tests/manual/map-events.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <title>map.div Events Acceptance Test</title>
+    <link rel="stylesheet" href="../../theme/default/style.css" type="text/css">
+    <link rel="stylesheet" href="../../examples/style.css" type="text/css">
+    <script src="../../lib/OpenLayers.js"></script>
+    <script type="text/javascript">
+        var map, layer;
+        function init() {
+            map = new OpenLayers.Map('map');
+            layer = new OpenLayers.Layer.OSM( "Simple OSM Map");
+            map.addLayer(layer);
+            map.setCenter(
+                new OpenLayers.LonLat(-71.147, 42.472).transform(
+                    new OpenLayers.Projection("EPSG:4326"),
+                    map.getProjectionObject()
+                ), 12
+            );
+
+            var element = document.getElementById('map');
+            element.addEventListener('mousedown', function(evt) {
+                alert('mousedown on map div');
+            });
+        }
+    </script>
+  </head>
+  <body onload="init()">
+    <h1 id="title">map.div Events Acceptance Test</h1>
+
+    <div id="map" class="smallmap"></div>
+
+    <p><b>Test 1</b> : mousedown the map; an alert must be displayed.</p>
+  </body>
+</html>
diff --git a/tests/run-tests.html b/tests/run-tests.html
index b2e0556..d1517e4 100644
--- a/tests/run-tests.html
+++ b/tests/run-tests.html
@@ -92,11 +92,13 @@
                 </div>
             </div>
         </div>
+        <span>
+            <iframe id="test_iframe_el" style="display:none" name="test_iframe" onload="Test.AnotherWay._test_page_onload();">
+            </iframe>
+        </span>
         <span style="display:none">
             <iframe name="list_iframe" onload="Test.AnotherWay._list_iframe_onload();">
             </iframe>
-            <iframe name="test_iframe" onload="Test.AnotherWay._test_page_onload();">
-            </iframe>
             <!-- record_control div is to be imported into other documents, so all its styles are inline -->-
             <div id="record_control" style="position:absolute;bottom:0;left:0;margin:0;padding:0.5em;width:22em;height:22em;border:1px solid;background:#ffd;font: normal normal 8pt sans-serif; color:#000; text-align: left">
                 <p style="margin:0 0 0 0; padding:0">
diff --git a/theme/default/google.css b/theme/default/google.css
index 3ee757c..1b748ef 100644
--- a/theme/default/google.css
+++ b/theme/default/google.css
@@ -3,15 +3,7 @@
     bottom: 2px;
     left: auto;  
 }
-.olLayerGoogleV3.olLayerGoogleCopyright {
-    bottom: 0px;
-    right: 0px !important;
-}
 .olLayerGooglePoweredBy {
     left: 2px;
     bottom: 2px;   
 }
-.olLayerGoogleV3.olLayerGooglePoweredBy {
-    bottom: 0px !important;
-}
-
diff --git a/theme/default/google.tidy.css b/theme/default/google.tidy.css
index 4ba0cd8..c0e07ac 100644
--- a/theme/default/google.tidy.css
+++ b/theme/default/google.tidy.css
@@ -1 +1 @@
-.olLayerGoogleCopyright{right:3px;bottom:2px;left:auto;}.olLayerGoogleV3.olLayerGoogleCopyright{bottom:0;right:0!important;}.olLayerGooglePoweredBy{left:2px;bottom:2px;}.olLayerGoogleV3.olLayerGooglePoweredBy{bottom:0!important;}
\ No newline at end of file
+.olLayerGoogleCopyright{right:3px;bottom:2px;left:auto;}.olLayerGooglePoweredBy{left:2px;bottom:2px;}
\ No newline at end of file
diff --git a/theme/default/style.css b/theme/default/style.css
index 8e0abb7..cbed84e 100644
--- a/theme/default/style.css
+++ b/theme/default/style.css
@@ -7,6 +7,7 @@ div.olMap {
 
 div.olMapViewport {
     text-align: left;
+    -ms-touch-action: none;
 }
 
 div.olLayerDiv {
@@ -28,6 +29,10 @@ div.olLayerDiv {
 .olLayerGoogleV3.olLayerGooglePoweredBy {
     bottom: 15px !important;
 }
+/* GMaps should not set styles on its container */
+.olForeignContainer {
+    opacity: 1 !important;
+}
 .olControlAttribution {
     font-size: smaller;
     right: 3px;
@@ -482,3 +487,30 @@ a.olControlZoomOut {
     -o-transition: opacity 0.2s linear;
     transition: opacity 0.2s linear;
 }
+
+/* Turn on GPU support where available */
+.olTileImage {
+    -webkit-transform: translateZ(0);
+    -moz-transform: translateZ(0);
+    -o-transform: translateZ(0);
+    -ms-transform: translateZ(0);
+    transform: translateZ(0);
+    -webkit-backface-visibility: hidden;
+    -moz-backface-visibility: hidden;
+    -ms-backface-visibility: hidden;
+    backface-visibility: hidden;
+    -webkit-perspective: 1000;
+    -moz-perspective: 1000;
+    -ms-perspective: 1000;
+    perspective: 1000;
+}
+
+/* when replacing tiles, do not show tile and backbuffer at the same time */
+.olTileReplacing {
+    display: none;
+}
+
+/* override any max-width image settings (e.g. bootstrap.css) */
+img.olTileImage {
+    max-width: none;
+}
diff --git a/theme/default/style.mobile.css b/theme/default/style.mobile.css
index 2d4d392..92e7d00 100644
--- a/theme/default/style.mobile.css
+++ b/theme/default/style.mobile.css
@@ -43,21 +43,28 @@ div.olControlZoom a:hover {
         background: rgba(0, 60, 136, 0.5);
     }
 }
+div.olMapViewport {
+    -ms-touch-action: none;
+}
 .olLayerGrid .olTileImage {
     -webkit-transition: opacity 0.2s linear;
     -moz-transition: opacity 0.2s linear;
     -o-transition: opacity 0.2s linear;
     transition: opacity 0.2s linear;
 }
-/* Enable 3d acceleration when operating on tiles, this is
-   known to yield better performance on IOS Safari.
-   http://osgeo-org.1803224.n2.nabble.com/Harware-accelerated-CSS3-animations-for-iOS-td6255560.html
-
-   It also prevents tile blinking effects in iOS 5.
-   See https://github.com/openlayers/openlayers/issues/511
-*/
- at media (-webkit-transform-3d) {
-img.olTileImage {
-    -webkit-transform: translate3d(0, 0, 0);
-}
+/* Turn on GPU support where available */
+.olTileImage {
+    -webkit-transform: translateZ(0);
+    -moz-transform: translateZ(0);
+    -o-transform: translateZ(0);
+    -ms-transform: translateZ(0);
+    transform: translateZ(0);
+    -webkit-backface-visibility: hidden;
+    -moz-backface-visibility: hidden;
+    -ms-backface-visibility: hidden;
+    backface-visibility: hidden;
+    -webkit-perspective: 1000;
+    -moz-perspective: 1000;
+    -ms-perspective: 1000;
+    perspective: 1000;
 }
diff --git a/theme/default/style.mobile.tidy.css b/theme/default/style.mobile.tidy.css
index 10b8bff..bf7eeaf 100644
--- a/theme/default/style.mobile.tidy.css
+++ b/theme/default/style.mobile.tidy.css
@@ -1 +1 @@
-div.olControlZoom{position:absolute;top:8px;left:8px;background:rgba(255,255,255,0.4);border-radius:4px;padding:2px;}*{-webkit-tap-highlight-color:rgba(0,0,0,0);}div.olControlZoom a{display:block;color:#FFF;font-size:28px;font-family:sans-serif;font-weight:700;text-decoration:none;text-align:center;height:32px;width:32px;line-height:28px;text-shadow:0 0 3px rgba(0,0,0,0.8);background:rgba(0,60,136,0.5);filter:alpha(opacity=80);margin:1px;padding:0;}a.olControlZoomIn{border-radius:4px 4px [...]
\ No newline at end of file
+div.olControlZoom{position:absolute;top:8px;left:8px;background:rgba(255,255,255,0.4);border-radius:4px;padding:2px;}*{-webkit-tap-highlight-color:rgba(0,0,0,0);}div.olControlZoom a{display:block;color:#FFF;font-size:28px;font-family:sans-serif;font-weight:700;text-decoration:none;text-align:center;height:32px;width:32px;line-height:28px;text-shadow:0 0 3px rgba(0,0,0,0.8);background:rgba(0,60,136,0.5);filter:alpha(opacity=80);margin:1px;padding:0;}a.olControlZoomIn{border-radius:4px 4px [...]
\ No newline at end of file
diff --git a/theme/default/style.tidy.css b/theme/default/style.tidy.css
index 0368055..f973d45 100644
--- a/theme/default/style.tidy.css
+++ b/theme/default/style.tidy.css
@@ -1 +1 @@
-div.olMap{z-index:0;cursor:default;margin:0!important;padding:0!important;}div.olMapViewport{text-align:left;}.olLayerGoogleCopyright{left:2px;bottom:2px;}.olLayerGoogleV3.olLayerGoogleCopyright{right:auto!important;}.olLayerGooglePoweredBy{left:2px;bottom:15px;}.olLayerGoogleV3.olLayerGooglePoweredBy{bottom:15px!important;}.olControlAttribution{font-size:smaller;right:3px;bottom:4.5em;position:absolute;display:block;}.olControlScale{right:3px;bottom:3em;display:block;position:absolute;f [...]
\ No newline at end of file
+div.olMap{z-index:0;cursor:default;margin:0!important;padding:0!important;}div.olMapViewport{text-align:left;-ms-touch-action:none;}.olLayerGoogleCopyright{left:2px;bottom:2px;}.olLayerGoogleV3.olLayerGoogleCopyright{right:auto!important;}.olLayerGooglePoweredBy{left:2px;bottom:15px;}.olLayerGoogleV3.olLayerGooglePoweredBy{bottom:15px!important;}.olForeignContainer{opacity:1!important;}.olControlAttribution{font-size:smaller;right:3px;bottom:4.5em;position:absolute;display:block;}.olCont [...]
\ No newline at end of file
diff --git a/tools/mergejs.py b/tools/mergejs.py
index a0b7566..1b26f2e 100755
--- a/tools/mergejs.py
+++ b/tools/mergejs.py
@@ -31,7 +31,7 @@
 #
 # Note: This is a very rough initial version of this code.
 #
-# -- Copyright 2005-2012 OpenLayers contributors / OpenLayers project --
+# -- Copyright 2005-2013 OpenLayers contributors / OpenLayers project --
 #
 
 # TODO: Allow files to be excluded. e.g. `Crossbrowser/DebugMode.js`?
diff --git a/tools/release.sh b/tools/release.sh
index 5465766..125065b 100755
--- a/tools/release.sh
+++ b/tools/release.sh
@@ -1,12 +1,38 @@
 #!/bin/sh
 
+#
+#
+# Usage:
+# $ ./release.sh <release_number>
+#
+# Example:
+# $ ./release.sh 2.12-rc7
+#
+# This script should be run on the www.openlayers.org server.
+#
+# What the script does:
+#
+# 1. Download release tarball from from GitHub.
+# 2. Create builds using the Closure Compiler.
+# 3. Run the exampleparser.py script to create the examples index.
+# 4. Run csstidy for each CSS file in theme/default.
+# 5. Publish builds and resources on api.openlayers.org.
+# 6. Build the API docs.
+# 7. Create release archives
+# 8. Make the release archives available on openlayers.org/downloads.
+#
+#
+
 VERSION=$1
 
 wget -c http://closure-compiler.googlecode.com/files/compiler-latest.zip
 unzip compiler-latest.zip 
 
-svn export http://svn.openlayers.org/tags/openlayers/release-$VERSION OpenLayers-$VERSION
-cd OpenLayers-$VERSION/build
+wget -O release-${VERSION}.tar.gz https://github.com/openlayers/openlayers/tarball/release-${VERSION}
+tar xvzf release-${VERSION}.tar.gz
+mv openlayers-openlayers-* OpenLayers-${VERSION}
+cd OpenLayers-${VERSION}/build
+
 mv ../../compiler.jar ../tools/closure-compiler.jar
 ./build.py -c closure full
 ./build.py -c closure mobile OpenLayers.mobile.js
@@ -14,26 +40,25 @@ mv ../../compiler.jar ../tools/closure-compiler.jar
 ./build.py -c none full OpenLayers.debug.js
 ./build.py -c none mobile OpenLayers.mobile.debug.js
 ./build.py -c none light OpenLayers.light.debug.js
-cp OpenLayers.js ..
-cp OpenLayers.*.js ..
+mv OpenLayers*.js ../
 rm ../tools/closure-compiler.jar
 
 cd ..
 cd tools
 python exampleparser.py
 cd ..
-for i in google ie6-style style; do
+for i in google ie6-style style style.mobile; do
     csstidy theme/default/$i.css --template=highest theme/default/$i.tidy.css
 done    
 
-mkdir doc/devdocs
-mkdir doc/apidocs
+mkdir -p doc/devdocs
+mkdir -p doc/apidocs
 rm tools/*.pyc
 
-mkdir /osgeo/openlayers/docs/api/$VERSION
-cp OpenLayers.js /osgeo/openlayers/docs/api/$VERSION
-cp -a img/ /osgeo/openlayers/docs/api/$VERSION
-cp -a theme/ /osgeo/openlayers/docs/api/$VERSION
+mkdir -p /osgeo/openlayers/sites/openlayers.org/api/$VERSION
+cp OpenLayers*.js /osgeo/openlayers/sites/openlayers.org/api/$VERSION
+cp -a img/ /osgeo/openlayers/sites/openlayers.org/api/$VERSION
+cp -a theme/ /osgeo/openlayers/sites/openlayers.org/api/$VERSION
 
 cd ..
 
@@ -43,4 +68,4 @@ naturaldocs -i OpenLayers-$VERSION/lib -o HTML OpenLayers-$VERSION/doc/apidocs -
 tar cvfz OpenLayers-$VERSION.tar.gz OpenLayers-$VERSION/
 zip -9r OpenLayers-$VERSION.zip OpenLayers-$VERSION/
 
-cp OpenLayers-$VERSION.* /osgeo/openlayers/docs/download 
+cp OpenLayers-$VERSION.* /osgeo/openlayers/sites/openlayers.org/download
diff --git a/tools/uglify_js.py b/tools/uglify_js.py
new file mode 100644
index 0000000..50ef098
--- /dev/null
+++ b/tools/uglify_js.py
@@ -0,0 +1,35 @@
+"""Utility to use the Uglify JS Compiler CLI from Python."""
+
+import logging
+import subprocess
+
+
+def check_available():
+    """ Returns whether the uglify-js tool is available. """
+    subprocess.check_output(['which', 'uglifyjs'])
+
+
+def compile(source_paths, flags=None):
+    """
+    Prepares command-line call to uglify-js compiler.
+
+    Args:
+      source_paths: Source paths to build, in order.
+      flags: A list of additional flags to pass on to uglify-js.
+
+    Returns:
+      The compiled source, as a string, or None if compilation failed.
+    """
+
+    args = ['uglifyjs']
+    args.extend(source_paths)
+    args.extend(['-c', '-m'])
+    if flags:
+        args += flags
+
+    logging.info('Compiling with the following command: %s', ' '.join(args))
+
+    try:
+        return subprocess.check_output(args)
+    except subprocess.CalledProcessError:
+        return

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/openlayers.git



More information about the Pkg-grass-devel mailing list