get leaflet from npm rather than git.
Throw an error if a MarkerClusterGroup is added to a map with no maxZoom. Fixes #189