(SERVER-30) Improve SSL fail-fast for master & CA

The first change in here adds fail-fast behavior to the master service so that it will fail to start if it finds it doesn't have its private key, certificate, and local CA certificate.  If all three of those files are missing, the entire set of SSL files will be generated.

The second change in here loosens the conditions for CA fail-fast so it no longer requires the CA public key, and it will automatically create the signed/ and requests/ directories if they don't exist.

----

One important thing about this fail-fast behavior on the master is that the file check exists inside the CA service rather than the master service (and after it calls into CA/initialize-master-ssl!).

This means that when the CA is disabled, the file check won't happen, and instead you'll get an error on startup from the webserver not being able to find the SSL cert. I can't quite remember if we decided we didn't like this, but I'm happy to improve the error message by moving this file check into the master service.
`(is (nil? ...` is confusing here.  I assume that is just testing that `initialize!` doesn't throw?  If so, I think it'd be clearer to just call `initialize!` and omit the assertion.