Continuous zoom enabled

Enabling continuous calls to handlePinch, instead of at the end of the pinchgesture
Multiple changes:

1. set m_zoom to float and modified appropriate methods to handle this change.
2. Added a class member to save the zoom state (zoom-in and zoom-out)
3. Added a member to save initial zoom level for the view (defaults to 16)
sets m_initZoom default to 16.0
modified function signatures to include const
Handling of continuous zoom

1. Use of float zoom to calculate tileSize which is further used to calculate perspective matrix
2. Use of int zoom to determine visible tile bounderies (16.0-16.9 -> 16). We can also use round(m_zoom) here to have
zoom level switch at 0.5 intervals (15.5 - 16.4 -> 16). This can further be modified to be configured.
3. Setting of m_zoomState in View::zoom method.
Handling logical deletion of a MapTile

Included a m_status member to MapTile. This helps in determining if a tile is in a possibly deleted state (will be
pruned next update), or it should be drawn either as a proxy or a visible tile.
Updates for Continuous Zooming

1. MapTile is a shared_ptr now. Ownership can be shared between visible tile set or proxy tile set
2. Added a loop to draw proxy tiles
3. Updated handlePinchGesture to call View::zoom appropriately.
Handling of Proxy Tiles

- Ownership of MapTiles is shared between m_tileSet and m_proxyTiles
- Before loading/fetching data for a newly visible tile, see if parent/child(depending on zoomState) are previously
loaded, if yes then add corresponding MapTile to the set of m_proxyTiles.
- Once a visible tile is loaded, m_tileSet is updated and MapTile is set to enable drawing. Also its proxies are cleared
from m_proxyTiles
- Logical deletion of MapTiles from m_tileSet when syncing m_tileSet and newly visible tiles. This is to share info and
help constructing proxy Tiles (possible visible previous update calls).
- Actual deletion of MapTiles from m_tileSet happen while syncing m_tileSet and m_proxyTiles. So basically any tile
which was logically deleted(m_status was set to false) and not present in m_proxyTiles at the end of an updateTileSet
call, will be pruned from m_tileSet.
Merge branch 'master' into cont-zoom