Related to #9289, after a method is invoked, authorization needs to know the object returned from the method invocation.

Because method invocations happen frequently, it's better to not create a new context object to hold both the MethodInvocation and the returned value. A new interface will allow for the return value to be passed in as a separate parameter instead.

Note that this is similar to AfterInvocationManager, though following AuthorizationManager's design, which allows for returning a decision instead of throwing an exception.