[MCC-115100] Added support for Request filters

* Now sends the correct Accept header depending on the chosen serializer
* Now supports adding ```ITransitionRequestFilter```s. These can be used for authentication schemes or other systems that need to modify the outgoing messages to include special headers or whatever.

For example, we could add an OAuthTransitionRequestFilter, and register it like:

```csharp
var client = new CrichtonClient(...etc...);
client.TransitionRequestHandler.AddRequestFilter(new OAuthRequestFilter(params));
```

@mdsol/hypermedia-team @kenyamat Please review and merge.