Adds support for Bing Maps (#407)
This makes a number of changes in the tile_map plugin in order to support
different types of tile servers, including Bing Maps. Notable changes include:
- TileSource is now an abstract class
- WMTS server-specific behavior has been moved into a new WmtsSource class
- BingSource provides support for obtaining tiles from Bing Maps
- The UI for specifying server URLs has changed
- Prefix and coordinate order are no longer separate fields
- In URLs for WMTS sources, the variables {level}, {x}, and {y} will be substituted with appropriate values when tiles are requested
- Rather than generating hashes for image tiles based on their URLs, hashes are now generated by the TileSource implementations in order to support sources that can pull tiles from multiple servers
- Idle performance has been improved by removing redundant recalculations of the map view
- Added a dependency on libjsoncpp
Resolves #227