Turning @tschaub's FeatureAgent into an event extension.

See http://trac.osgeo.org/openlayers/browser/sandbox/tschaub/select/lib/OpenLayers/FeatureAgent.js. Tests are still missing, but this already works on mobile devices and with Canvas layers. Another possible task would be to make the SelectFeature control use this instead of the Feature handler - then we could get rid of the RootContainer layer for multiple layer selection.
Make feature handler propagate touch events

This commit is a follow-up on issue #294 (commit a6119f6) and #861 (commit c7a4045). The feature handler should not stop the bubbling up of browser events. In this particular case, when the feature handler is activate, Sencha Touch will trigger longpress events when panning the map because the feature handler stops touchmove.
TextButtonPanel allows the user to easily add Text/CSS buttons to the map that are styled like the zoom control.  This is a single commit containing of all the changes for TextButtonPanel.  I deleted the original TextButtonPanel branch, as I borked it.
remote unneeded createControlMarkup method
Add OpenLayers/Control.js to "requires"

Fix issue #969
We are dealing with strings for comparison

Because OpenLayers.Util.getParameters turns comma delimited values into
arrays, comparing e.g. bbox values in urls will return false. By
introducing a splitArgs option, we can use getParameters in a way that
leaves such values as strings and makes them comparable in
OpenLayers.Util.isEquivalentUrl.
Use getTile() instead of imgDiv to get the correct element

The correct way to get the markup of a tile is to use getTile() - the
imgDiv will only be available if the tile does not use a frame.
.olTileReplacing is on the parent of .olTileImage when using frame
Zoomify - Fix for Wrong dimensions for marginal tiles for resolutions with dimensions dividable by tile size

- Fix for problem from this issue: https://github.com/openlayers/openlayers/issues/928
Make sure that drawTilesFromQueue gets executed

For events other than move, the tile queue may not be populated yet when
updateTimeout is called. So instead of checking for the queue's length,
we register the timer unconditionally in these cases.
tests/EncodedPolyline: Fixed indent
Format/EncodedPolyline: Added opt_factor parameter to encode/decode()
Format/EncodedPolyline: Change default factor to 1e5

This matches the factors in the other methods and the default of the
original algorithm. Having this set at 1 before can be considered
as a bug.
Do not manage cache when cached tile is on target layer's backbuffer
testing for featureclick
update OpenLayers.js to include featureclick and add featureclick to tests
Avoiding duplicate events
We don't want to re-select an already selected feature
test_onClick23 now firing featureclick but only once for many features
Fixing tests

Selecting the same feature again should not do anything, which was ensured
in the old implementation by a check in the SelectFeature control. This
means that the previous commit causes a change in behavior in standalone
mode, which I would consider a bugfix. I documented this change in the
release notes.