DONE: map-service

Problem
=======
Map Directive has become polluted, aggregate directives are misplaced.
Solution
========
Call into life a map-service that handles this stuff.
TODO
----
- [x] Create map-service
- [x] Write tests
- [x] Port/refactor map-directive helper functions to service

This needs to be done in another refactoring. All stuff depending on `$scope.map` now depends on MapService
- Port/refactor aggregate-directive to service