Fix the static certs expiration dates

This commit should take care of certificate expirations in the Riak 1.4 branch for roughly a decade, by which time we'll hopefully be done with 1.4 releases.

All of the certificates in priv/certs/selfsigned and priv/certs/special have been regenerated with the function make_certs:create_priv_certs/0, which is included in this commit.

The priv/certs/README file has been updated to refer to the relevant function as well.

NO tests are changed in this commit, it affects certificates only.

The src/make_certs.erl module includes many, many changes, mostly to improve error reporting.  When dealing with certificates through OpenSSL, it helps A LOT to handle error conditions and report what actually happened, so the bulk of the changes are to make using the operations less opaque.

I have done a LOT of code cleanup in that module, but have tried very hard to maintain the functionality of exported functions (I've also changed it to not export all functions).  I found and fixed several inconsistencies in the generated CA configurations (stuff like pointing to non-existent RAND files and CRL URIs that will never be there) - for testing in this branch these changes are unlikely to matter, but as the code evolves and gets ported forward they may.

There are also as-yet-unused type definitions in this version that will (hopefully) be put to use in a properly-documented API when some of the the cleanup gets ported forward to the current branch.