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 parser for TMS Capabilities
add OSGEO:41001 as an equivalent for web mercator (used in TMS)
Merge pull request #960 from adv-isu/TextButtonPanel2

TextButtonPanel, Attempt 2 (Zoom-Control-like text+CSS buttons)
Only cache image tiles

This avoids caching of e.g. UTFGrid tiles, which are not represented by a
DOM element and break css classes management as a consequence of this.
Adding missing requires.
Do not deal with layers that have non-Image tiles
Merge pull request #1018 from ahocevar/tilemanager-image-only

UTFGrid examples broken because of TileManager. r=@bartvde
parse version and tilemapservice attributes for TileMap
add missing @requires as pointed out by @ahocevar
Merge pull request #1021 from bartvde/tms

Add parser for TMS Capabilities (r=@ahocevar)
Set image state to loaded instead of waiting for it to load

This is necessary because some recent Chrome optimizations seem to defer
loading of images that are not visible on the viewport until JS execution
gets idle, which does not happen while executing tests.
Simplified logic for detecting cached tiles on a backbuffer

We no longer need to bail out when the img parent is the current
backbuffer. That was added to fix #980, but the real fix for #980 is to not
manage the tile cache in addLayer when a tile has an imgDiv already. In
addition, it is not needed to manage the tile cache in removeLayer.
Do not go through the tile load cycle if not needed

When a tile has no url yet and no existing imgDiv, we can immediately
return from initImage because there is nothing to do. Without this, Chrome
seems to get confused by adding an image without src, which is removed
later.
Typos in the docs: it's -> its
Merge pull request #1032 from kryger/master

Typos in the docs: it's -> its
Merge pull request #1019 from ahocevar/chrome-optimized

Deal with recent Chrome optimizations to avoid failing TileManager and tests
Typos: "colums" -> "columns", "exceess" -> "excess"
Merge pull request #1037 from kryger/master

Typos: "colums" -> "columns", "exceess" -> "excess"