use osrm-datastore for testing, keep osrm-routed runnning

This branch uses osrm-datastore to load data during cucumber testing, resulting in a speed up of more than 3x on cached tests. (First run is about the same, since data must be converted with osmosis).

Before each scenario is run, osrm-datastore is used to load the new into shared memory. osmr-routed is then launched if it's not already running. As cucumber exits, osrm-routed is shutdown.

We might want to add some testing of the good ol' way of loading data directly with osrm-routed, since with the current version of this branch, osrm-routed never load data directly.

I did experience some weird behaviour when trying to launch osrm-routed manually from the command line, and then running osrm-datastore from the cuke scripts, including errors in datastore indicating failure to free data, osrm-routed not returning correct routes, and osrm-routed throwing exception. This should perhaps be investigated. But when launching both routed and datastore from the cuke scripts it seems to work fine.

Can we merge the edits here as a separate PR? Looks like this is pretty much independent of the testing code.