Make the conversation from and to json extendable.

In one of my costomers environemnt I got the following error/message when the object should be stored down to SqlErrorStore

```
Error log is in failure mode, 1 entry queued to log.
Last Logging Exception: Error during serialization or deserialization using the JSON JavaScriptSerializer. The length of the string exceeds the value set on the maxJsonLength property.
```

To be able to configure the maxJsonLength property on the `JavaScriptSerializer` the `Error.cs` need to be extendable to allow configuration of the converter. 

With the configurable Func-properties it will be possible to change the json serialization to ex Json.net without to create a direct dependency to the thirdparty assembly.