! routing: PathMatcher.(flat)map => h(flat)map, introduce map/flatMap, fixes #274

This basically replicates the naming scheme from Directive. In a second step one could also think about changing the names in `PathMatcher.Matching` but I don't think this is much used public API so it may not worth the effort just for being consistent.