public void Persist(Events theEvents)
        {
            byte[] requestBody = theEvents.Encode(new Utf8JsonEncoder());
            Uri pathToNewDocument = _couchDbDatabaseDetails.UriForANewDocument;
            HttpWebRequest request =
                new HttpWebRequestFactory(pathToNewDocument, HttpMethod.PUT)
                    .WithBasicAuthorisation(_couchDbDatabaseDetails.CredentialsEncodedForBasicAuth)
                    .WithContent(MimeType.APPLICATIONJSON, requestBody)
                    .Build();

            _requestGateway.SafelyMakeRequest(request).ThrowExceptionsForAnyFailures(HttpStatusCode.Created);
        }