Refactor Style (and subclass) to simplify, generalize, and more closely mirror Javascript implementation;
 - Style classes should now override buildPoint, buildLine, and buildPolygon to define their geometry manipulations
 - Styles are currently applied to data layers just by matching a string to the layer name, this needs to be generalized
 - PolygonStyle maintains some probably unnecessary copies of vertex location and normal data that is reset after building each tile, should be consolidated later
 - Layer name is currently added to the json properties with the intent of making it part of our unified tile data type later
Add GL depth testing! Fixes building layer being drawn over, but we'll need a more deterministic approach to eliminate z-fighting
Merge branch 'tile-management' of https://github.com/tangram-map/tangram-es into tile-management
 - A change was made to the process of moving polygons to the height specified in their properties object
 - Shader in PolygonStyle was modified to add very basic lighting for 3d visualizaiton

Conflicts:
	core/style/style.cpp
	core/tileManager/tileManager.cpp
	core/util/jsonExtractor.h