first attempt at tiling

only draw once at startup. the following layers are drawn:
- grid
- star points
- stones
- symbols

no zoom, no scrolling, no updates of any kind.
fix zooming
implement tiling for all layers except cross-hair layers
implement tiling for cross-hair layers
fix memory leaks
minor cleanup in PlayTabControllerPhone
add tiling support for iPad
remove obsolete CATransactions
no longer set contentMode for tiles

contentMode is not needed because our tiles are not UIImageViews that
stretch their image
move line rectangle calculation to PlayViewMetrics

this clears up the issue of when to deallocate the line rectangle array.
also, line rectangles are now calculated only once, the resulting array
is used by both layer delegates that need to draw lines.
optimize drawing in CrossHairLinesLayerDelegate

the layer is now only drawn if something actually changed about the
cross-hair lines within the tile boundary (cross-hair lines have started
or stopped to intersect with the tile, or if they keep intersecting but
at a different position).

in addition, only that region of the layer is drawn that actually needs
a change (setNeedsDisplayInRect:).
optimize drawing in CrossHairStoneLayerDelegate

the layer is now only drawn if something actually changed about the
cross-hair stone within the tile boundary (cross-hair stone has started
or stopped to intersect with the tile, or if it keeps intersecting but
at a different position).

in addition, only that region of the layer is drawn that actually needs
a change (setNeedsDisplayInRect:).
optimize drawing in StonesLayerDelegate

the layer is now only drawn if something actually changed about the
intersections within the tile boundary (stone was placed or captured).
optimize drawing in InfluenceLayerDelegate

the layer is now only drawn if something actually changed about the
intersections within the tile boundary (influence score did change).
tiling: implement tap gesture during scoring
optimize drawing in TerritoryLayerDelegate

the layer is now only drawn if something actually changed about the
intersections within the tile boundary (territory markup style did
change).
optimize drawing in StoneGroupStateLayerDelegate

the layer is now only drawn if something actually changed about the
intersections within the tile boundary (stone group state of the region
that points belong to did change).
merge star points layer with grid layer (#215)
merge stone group state layer with territory layer (#215)
dynamically add/remove influence layer (#214)