Implement simple "minimum length" forecast

This looks how much the current solution grows if all subsequent
transitions have the minimal cost.

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
Expose Distance_matrix::min_cost() to python

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
Add some debug output to the integration test

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
Put forecast calculation into a seperate class

The forecasts for the combination tesps are now precalculated from the
Distance_matrix and can be simply queried

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
Add unittests for the forecast calculation

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
Replae on-the-fly forecast with Distance_forecast

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>