Add JVM options for VisualVM profiling.

Also gitignore all the class files generated by the tool.
Use slim mode for osm2pgsql to cache to DB.

This reduces the amount of memory required for the OSM import.
Move windshaft url functions to windshaft service
Map service refactor: events, enabledModes, refresh

Continues the map service refactor with the following:

Rename to OTIMapService from OTIWindshaftService,
use of windshaft was too specific

Move map layer refresh function from controller to map service

Add Events object for map specific events and remove from OTIEvents
Each service should control the definition for its own events. Derp.

Encapsulate map enabled modes inside map service
Bugfix: Replace missing Config with configs resource
MapService Refactor Part 2

Refactors the following:

Move otiIndicatorsMapService.modes to
OTIMapService._availableTransitModes

Move getLegendData to MapService, and fires
AvailableModesUpdated event

Moves getMapInfo to getMapExtent and rejects promise
if no map extent data

Refactors all initialization logic in root-controller to
the initialize function, and moves the init function off
the $scope
Remove scenario prototype, use bower leaflet draw
Move map style service to transitmap
Move all get*Types functions to OTITypes service
Move IndicatorJob to IndicatorJobModel factory
Refactor city endpoints to OTICityManager
Merge branch 'feature/indicator-service-refactor-2' into develop
Merge branch 'develop' of github.com:WorldBank-Transport/open-transit-indicators into develop
Validate config before allowing new IndicatorJob to be created
Add stop service and break logic out into services
Add directive for popup over stops
Add map clearing to statechange
Add shapes to scenarios
Add error message to API for IndicatorJob creation when invalid config

Sync translation
DRY out the ID generation functionality