super refactored, now the maps widget is only responsible for the initial map loading, while the routes widget handles getting crime data and rendering the routes on the page, will refactor/decouple further