X509Backend support in OpenSSL backend

This PR adds a dependency on `enum34`. I am expecting some improvements to be needed in the docs along with potentially some comments required to explain the purpose of some of the tests.

Depends on #1498.
Yeah probably should. These methods are also present in #1503 (I pulled them from this PR and hoisted them into the backend itself). If that PR lands first I'll rebase this one against it.