Made json serialization configurable in order to minimize dependency on external libraries, the default implementation is using JavaScriptSerializer