Make keystone_pki less keystone specific

We need to create ssl certs for services other than Keystone. Renaming
keystone_pki to ssl_pki, and making the routines less keystone specific
so we can create certs for other services.

Also creating generate_ssl_cert command which can generate ssl
certificates for multiple services using a single CA.

Change-Id: I4d65cceee9e15ce0ca8ef309127a587135355810
ssl_for_create_admin_client

Allowing the use of 'ssl' and 'public' parameters
in _create_admin_client() to emulate _create_keystone_endpoint.

Also altering intialize_for_swift() and initialize_for_heat()
to also use/pass these parameters for their calls to
_create_admin_client().

Change-Id: Ia389c401f3a005c8c457194b78e45f26c5251e1e
Closes-Bug: #1367164
Merge "ssl_for_create_admin_client"
fix formatting issues in README.rst

the nested list items weren't rendering correctly on
github.

Change-Id: Ibf157c8bd4219112418304ff1499fe442f5b1f3e
Merge "Make keystone_pki less keystone specific"
Merge "fix formatting issues in README.rst"
Sprinkle :: throughout the setup-neutron docs

Force the setup-neutron section of usage.rst into line by using ::
to tell ReST that the following paragraph is a code block, which
makes it match the rest of the document.

Change-Id: I6d57353eda7db84e2f9311fdde48781e20bc54c5
Revert "Make keystone_pki less keystone specific"

This breaks the world due to parameters changing.

This reverts commit e5f844d126d6dbe6ad0b8a4dae5c2b314f5918a0.

Change-Id: Iad76855a02779018c2e2d3b0b65790ab9c7f7c99