FakeContext.Recorder now duplicates and forwards requests

You must duplicate the request in order to forward it.
Checkpoing : FakeContext.Recorder
Checkpoint : MockContext.Recorder works

* Big idea: MockContextAttribute marks the beginning of a
record/playback session
This feature is based on the Xunit.BeforeAfterAttribute class.
* MockContext renamed as MockContextRetired
* FakeContext renamed as MockContext
* Removed last remnants of Reactive from tree
Disabled one example and two tests as a result. I've got TODOs for
bringing these examples/tests back.
Checkpoint: MockContext.Player works
Switch to GZip compressed Json to come in under the 100 MB GitHub limit. (+2 squashed commit)

Squashed commit:

[e215666] Switched to DataContractJsonSerializer because it produces much smaller files

[20a34cd] Refined MockContext and generated recordings for all acceptance tests
Added .gz extension to all recording filenames

Recordings are now read/written as .json.gz files
Tweak to minimize the number of null object entries in the serialized queue
Fixed two Reactive-related test failures and updated acceptance test recordings.

All reactive test dependencies are now gone; one example to fix. We now
have a stand-in for Reactive: Splunk.Client.Helpers.Observer<T>.
Fixed example that was broken due to removing reactive dependency.
Record/playback now provides a means for dealing with variable data values:  T SDKHelper.GetOrElse<T>(T value)
MockContext now support recording request data as well as server responses

Issues:
* CanCrudSavedSearch fails in Playback mode due to DateTime
serialization issue.
This issue is rooted in the behavior of DataContractJsonSerializer which
does not appear to correctly deserialize DateTime values saved as
objects.
* CanExportSeachPreviews and CanExportSearchResults deadlock when run in
Record mode.
MockContext.Mode now defaults to Run