Refactor Web API authentication filters to use exception filters pattern.

In IAuthenticationFilter, follow the IExceptionFilter method pattern. The
return value of each method is a Task, and results are communicated by
setting properties on a single context parameter.