Major change in how the Leaflet(MapBox) Map Control works. Before, there was a static html file in /static... which was retrieved with an ajax call(in controls.js) and added as a content of the Map Control div. The problem with that was that every time we want to add a new API, we need to add code to the html, change, the javascript to handle it, etc.
The introduced solution - use the jinja templates to dynamically build the content of the Map Control. The ajax request in controls.js is still present, but the url is /app/control_panel. This route is currently handled by the home view.
There we add to a dict all of the API we have and some data we want to show on the Map Control(the police crime categories, for example) and then render the "main.html" template from templates/map_control.
The template relies on that we add to the "api" folder some specific for a given API functions. In the case of the Police API, where we need to select a Crime category, in the api/police.html template there is a single function calling a macro which generates a Collapsable div containing all police crime categories(the categories data is passed from the home view route handler, as already mentioned above). In the templates/map_control/misc  there are macros which make the adding of API templates quite easy.

So if one has added a new API on the server side, and wants to put some specific for the API options on the Map Control at the Client side, he needs to add the name of the api to controller->featureOptions, create a new template in /templates/map_control/api with the same name as the one added to featureOptions and use the macros to add what it is needed. Currently it is needed to add handler module in the data_handler.js at the front end. This will probably change(see later commits)

Sorry for the long commit message :)
tl;dr - Map Control on the right of the map is no longer static html.