Add CertificatesService
Extract custom extra
User should be able to pass a custom CSR
:body is now the default payload in options

You can pass :header and :query and they will be properly extracted and
merged for the HTTP client.
Test request error case
Update the docs to reflect the new interface