Retina support by calling TileLayer.initialize
TMS support

- Tried to make code a little easier to understand.
- Supporting TMS (just doing what L.TileLayer does here).