[Routing] made the component work with both RequestContext and Request

So the usage of RequestContext is now optional everywhere because people
can use a Request directly instead. For this to achieve, the generator and
matcher interface is now independent from RequestContextAwareInterface and
the RequestMatcherInterface now extends the UrlMatcherInterface.
Router implements RequestMatcherInterface (WIP)
[HttpKernel] RequestContextAwareInterface::getContext could return null

This is because if no RequestContext is set before calling get, there is no context that could be returned.
[WebProfiler] use the new request matching possibility

it also fixes the type hints that didnt make much sense
[Routing] rename variable for consistency