Overlay groups for layers control

Fix for issue #593:

Fix does the following:
* Adds another variable on initialize called "overlayGroups" which is an array of arrays with layers. All layers in each array will be grouped together with a radio button.
* addOverlayGroup() - Self explanatory but it takes in an array of overlays to be grouped together
* removeOverlayGroup() - Self explanatory but it takes in an the identical array of overlays to be deleted
* removes the dependency for 'leaflet-control-layers-base', 'leaflet-control-layers-overlay', and 'leaflet-control-layers-overlaygroups' to be displayed in any specific order.
* added a change to the css file to make the separator for the grouping layers identical to the other separator (in the future I can see this changing).

Things to be aware of:
* I forced the "re-rendering" (in _onInputClick()) to display base maps first, overlay groups second, then overlays. This prevents a 'random' arrangement of layers on the z-axis when turning off and on different layers (what was currently happening).

PS: Pardon the weird look of the files, I had an older version of the master I was working with so had to copy and paste the code over.