diff --git a/acme/acme/client.py b/acme/acme/client.py
index d52c82a5c..9e2478afe 100644
--- a/acme/acme/client.py
+++ b/acme/acme/client.py
@@ -227,8 +227,7 @@ class ClientBase(object):  # pylint: disable=too-many-instance-attributes
         response = self._post(url,
                               messages.Revocation(
                                 certificate=cert,
-                                reason=rsn),
-                                content_type=None)
+                                reason=rsn))
         if response.status_code != http_client.OK:
             raise errors.ClientError(
                 'Successful revocation must return HTTP OK status')

diff --git a/acme/acme/client_test.py b/acme/acme/client_test.py
index a0c27e74f..00b9e19dd 100644
--- a/acme/acme/client_test.py
+++ b/acme/acme/client_test.py
@@ -635,8 +635,7 @@ class ClientTest(ClientTestBase):
     def test_revoke(self):
         self.client.revoke(self.certr.body, self.rsn)
         self.net.post.assert_called_once_with(
-            self.directory[messages.Revocation], mock.ANY, content_type=None,
-            acme_version=1)
+            self.directory[messages.Revocation], mock.ANY, acme_version=1)
 
     def test_revocation_payload(self):
         obj = messages.Revocation(certificate=self.certr.body, reason=self.rsn)
@@ -776,8 +775,7 @@ class ClientV2Test(ClientTestBase):
     def test_revoke(self):
         self.client.revoke(messages_test.CERT, self.rsn)
         self.net.post.assert_called_once_with(
-            self.directory["revokeCert"], mock.ANY, content_type=None,
-            acme_version=2)
+            self.directory["revokeCert"], mock.ANY, acme_version=2)
 
 
 class MockJSONDeSerializable(jose.JSONDeSerializable):

`acme` module's `client._revoke` sends incorrect `ContentType` header.
[ACME draft-10, section 6.2](https://tools.ietf.org/html/draft-ietf-acme-acme-10#section-6.2) explicitly requires POSTs be sent with a `Content-Type` of `application/jose+json`: 

> Because client requests in ACME carry JWS objects in the Flattened
> JSON Serialization, they must have the "Content-Type" header field
> set to "application/jose+json".  If a request does not meet this
> requirement, then the server MUST return a response with status code
> 415 (Unsupported Media Type).

The good news is that Certbot & the `acme` module already do this in 99.99% of cases :tada: :+1: :balloon: 

The bad news is that `client._revoke` overrides the default (correct) `ContentType` with `none`: https://github.com/certbot/certbot/blob/77fdb4d7d6194989dcc775f2e0ad81b6147c2359/acme/acme/client.py#L231

This will make revocation requests fail in a world where this restriction is enforced (See https://github.com/letsencrypt/boulder/pull/3532) 

There doesn't seem to be a reason to want to override `ContentType` in this case so I believe the fix is to change `_revoke` to use the default.

Thanks!
acme/acme/client_test.py::ClientTest::test_revoke acme/acme/client_test.py::ClientV2Test::test_revoke
acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_finalize_order_v1_fetch_chain_error acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_finalize_order_v1_success acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_finalize_order_v1_timeout acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_finalize_order_v2 acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_forwarding acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_init_acme_version acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_init_downloads_directory acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_new_account_and_tos acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_new_order_v1 acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_new_order_v2 acme/acme/client_test.py::BackwardsCompatibleClientV2Test::test_revoke acme/acme/client_test.py::ClientTest::test_agree_to_tos acme/acme/client_test.py::ClientTest::test_answer_challenge acme/acme/client_test.py::ClientTest::test_answer_challenge_missing_next acme/acme/client_test.py::ClientTest::test_check_cert acme/acme/client_test.py::ClientTest::test_check_cert_missing_location acme/acme/client_test.py::ClientTest::test_deactivate_account acme/acme/client_test.py::ClientTest::test_fetch_chain_max acme/acme/client_test.py::ClientTest::test_fetch_chain_no_up_link acme/acme/client_test.py::ClientTest::test_fetch_chain_single acme/acme/client_test.py::ClientTest::test_fetch_chain_too_many acme/acme/client_test.py::ClientTest::test_init_downloads_directory acme/acme/client_test.py::ClientTest::test_poll acme/acme/client_test.py::ClientTest::test_poll_and_request_issuance acme/acme/client_test.py::ClientTest::test_query_registration acme/acme/client_test.py::ClientTest::test_refresh acme/acme/client_test.py::ClientTest::test_register acme/acme/client_test.py::ClientTest::test_request_challenges acme/acme/client_test.py::ClientTest::test_request_challenges_custom_uri acme/acme/client_test.py::ClientTest::test_request_challenges_deprecated_arg acme/acme/client_test.py::ClientTest::test_request_challenges_unexpected_update acme/acme/client_test.py::ClientTest::test_request_challenges_wildcard acme/acme/client_test.py::ClientTest::test_request_domain_challenges acme/acme/client_test.py::ClientTest::test_request_issuance acme/acme/client_test.py::ClientTest::test_request_issuance_missing_location acme/acme/client_test.py::ClientTest::test_request_issuance_missing_up acme/acme/client_test.py::ClientTest::test_retry_after_date acme/acme/client_test.py::ClientTest::test_retry_after_invalid acme/acme/client_test.py::ClientTest::test_retry_after_missing acme/acme/client_test.py::ClientTest::test_retry_after_overflow acme/acme/client_test.py::ClientTest::test_retry_after_seconds acme/acme/client_test.py::ClientTest::test_revocation_payload acme/acme/client_test.py::ClientTest::test_revoke_bad_status_raises_error acme/acme/client_test.py::ClientTest::test_update_registration acme/acme/client_test.py::ClientV2Test::test_finalize_order_error acme/acme/client_test.py::ClientV2Test::test_finalize_order_success acme/acme/client_test.py::ClientV2Test::test_finalize_order_timeout acme/acme/client_test.py::ClientV2Test::test_new_account acme/acme/client_test.py::ClientV2Test::test_new_order acme/acme/client_test.py::ClientV2Test::test_poll_and_finalize acme/acme/client_test.py::ClientV2Test::test_poll_authorizations_failure acme/acme/client_test.py::ClientV2Test::test_poll_authorizations_success acme/acme/client_test.py::ClientV2Test::test_poll_authorizations_timeout acme/acme/client_test.py::ClientNetworkTest::test_check_response_conflict acme/acme/client_test.py::ClientNetworkTest::test_check_response_jobj acme/acme/client_test.py::ClientNetworkTest::test_check_response_not_ok_jobj_error acme/acme/client_test.py::ClientNetworkTest::test_check_response_not_ok_jobj_no_error acme/acme/client_test.py::ClientNetworkTest::test_check_response_not_ok_no_jobj acme/acme/client_test.py::ClientNetworkTest::test_check_response_ok_no_jobj_ct_required acme/acme/client_test.py::ClientNetworkTest::test_check_response_ok_no_jobj_no_ct acme/acme/client_test.py::ClientNetworkTest::test_del acme/acme/client_test.py::ClientNetworkTest::test_del_error acme/acme/client_test.py::ClientNetworkTest::test_init acme/acme/client_test.py::ClientNetworkTest::test_requests_error_passthrough acme/acme/client_test.py::ClientNetworkTest::test_send_request acme/acme/client_test.py::ClientNetworkTest::test_send_request_get_der acme/acme/client_test.py::ClientNetworkTest::test_send_request_post acme/acme/client_test.py::ClientNetworkTest::test_send_request_timeout acme/acme/client_test.py::ClientNetworkTest::test_send_request_user_agent acme/acme/client_test.py::ClientNetworkTest::test_send_request_verify_ssl acme/acme/client_test.py::ClientNetworkTest::test_urllib_error acme/acme/client_test.py::ClientNetworkTest::test_wrap_in_jws acme/acme/client_test.py::ClientNetworkTest::test_wrap_in_jws_v2 acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_get acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_head acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_head_get_post_error_passthrough acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post_failed_retry acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post_no_content_type acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post_not_retried acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post_successful_retry acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post_wrong_initial_nonce acme/acme/client_test.py::ClientNetworkWithMockedResponseTest::test_post_wrong_post_response_nonce