Move control over road rendering order to SQL

Currently, rendering order of road rendering within one layer is handled
by the z_order column, which comes from osm2pgsql. As such, we have
little control over road rendering without reloading the database.
This PR moves control over the rendering order to the SQL query.

This adds complexity to the SQL queries, but increases customizability,
and simplifies the roads.mms code.

This solves the following issues:

* #462 (Move rendering order road types from osm2pgsql to our SQL queries)
* #163 (Railways are now drawn above roads)
* #167 (Tramway layering issues)
* #168 (Paths are now drawn below link roads)
* #266 (Service roads are now rendered below link roads)
* #830 (Service roads are now rendered below race tracks)
* Pedestrian and living streets are now consistently ordered
* Footways are now always displayed under service ways
* #753 (Casing of tertiary_link missing)
* #644 (bridge=yes renders over bridge=viaduct)