If we did create a PrefixProviderInterface we could inject the prefix provider into the RouteProvider and delegate responsibility for getting the prefixes rather than adding this directly to the RouteProvider. It may be simpler to just implement PrefixProviderInterface in RouteProvider but its more composable if we inject the implementation of PrefixProvider.