Added a client certificate support.

Added client::options to openssl_certificate_file() and openssl_private_key_file(). They correspond to Boost.Asio's use_certificate_file() and use_private_key_file().

Naming decisions:
1. The same as other member functions naming rules. (e.g. openssl_verify_path() )
2. Easy to find the Boost.Asio's corresponding member functions.

Note:
I have an idea to rename the existing member function openssl_certificate() to some different name. But it would be a breaking change and I believe that I shouldn't include it in this pull request.
The reasons that I'd like to rename openssl_certificate() are as follows:
1. openssl_certificate() corresponds to Boost.Asio's load_verify_file() so the new name should be openssl_load_verify_file() or openssl_verify_file(). Latter is better in cpp-netlib's naming mannar.
2. This pull request adds openssl_certificate_file() and I believe that it is an apropriate name. But openssl_certificate_file() and openssl_certificate() are confusing.

If you agree with my idea, I'm ready to make a pull request. For existing users, keeping openssl_certificate() as a deprecated alias of openssl_verify_file().