Updated so that the SSLEngines are lazy loaded.

TRUST_ALL and SELF_SIGNED where both loaded at the same time. In environments where only TRUST_ALL was needed and OpenJdkSelfSignedCertGenerator or BouncyCastleSelfSignedCertGenerator where not available. SELF_SIGNED would throw an exception forcing the user to create their own SSLEngineFactory for this type.
Added Documentation.
Updated examples and documentation to reflect changes to DefaultFactories
Merge pull request #234 from pieces029/0.x

Updated so that the SSLEngines are lazy loaded.