ParamConverter to inject the current user

When creating testable controllers, it's often desirable to not use the `getUser` function in the base controller, as this relies on the whole service container. 

In this case, we might add a dependency on the `SecurityContext` to achieve the same result, replicating this code: 

    public function getUser()
    {
        if (!$this->container->has('security.context')) {
            throw new \LogicException('The SecurityBundle is not registered in your application.');
        }

        if (null === $token = $this->container->get('security.context')->getToken()) {
            return;
        }

        if (!is_object($user = $token->getUser())) {
            return;
        }

        return $user;
    }

This parameter converter streamlines the process and injects the current user into the controller method instead using the following format:

    /**
     * @ParamConverter(converter="current_user", name="parameterName")
     */
    public function viewInboxAction(User $currentUser)


I see 2 better alternatives here:

  A) Instead of making it optional and throwing an exception if missing, add this service/converter only if the security component is available
  B) Move this to the `supports()` and just return false if non-existent. 

I'm in favor of A.