Preliminary token revocation support

Hi

I've started testing `pyramid-oauthlib` and would like to use it in a project. I have interest in supporting token revocation and have managed to get it roughly working with the given changes. I'd be interested in knowing your plans on how to properly implement it and would be happy to work on this part.

One issue I noticed is that the `RevocationEndPoint.create_revocation_response` builds the request object itself and passes that to the `RequestValidator.validate_revocation_request` method. This breaks the promise that the request parameters passed to the custom validator would be `pyramid.request.Request` instead of `oauthlib.common.Request`.

Looking forward to your comments.
> I don't see it such a problem if it goes away but it does change how it is now where you can provide a different request validator for each call.

I'm don't know that I see a use case for different request validators, but maybe there is one. If there is such a use case, one clear response is to just require the user to make some subclass mixing in the various request validator pieces they need so they can create one composite validator.

> Would the parameter for `config.set_request_validator` accept both a python import path to a callable producing the validator and a direct object reference to one?

Definitely. All the directives accept dotted string references.