Don't crash if we get empty grid data from the server. fixes #21
Own refactoring, breaks compatibility

On XHR vs JSONP:
 - L.UtfGrid defaults to XHR (sane default policy)
 - Implement JSONP behavior in a child class : L.UtfGridP
 - JSONP callbacks now have predictable names (set gridName option)
   cb name pattern : L.UtfGridP._cb.{gridName}.tile_{z}_{x}_{y}(...)

Add "add", "remove" layer events.

Fire "mouseout" on map's mouseout.

Re-implement pointerCursor behavior:
 - bind to events from this (tidy up code)
 - use leaflet-clickable css class on tilePane

Cherry-pick some code improvements from Mapbox and Leaflet.