Make auth interfaces more flexible

Allow AuthenticationNeeded/GrantNeeded interfaces to decide whether to handle the request, or let the default error response be written by the oauth server
Definitely docs and rules about updating the response.  How about a boolean return indicating if it wrote?