start `groups` manager

Meppit calls it `layers` but we will call it `groups` to avoid
misunderstanding, because Leaflet already has a different `layer` concept.