routing uses walking and cycling speed from config

+ DownloadUrl extended to support passing and returning a user state
object
+ added LocationHelper.CalculateRouteEx that returns an
ObjectWithState<>
* NavigationViewModel uses a better routing method; can optionally try
multiple different stations to use the shortest route: change the
Take(1) parameter of the nearFinish observable.