added the new SocketServer implementation

This commit includes the SocketServer, supporting classes, unit tests,
and a functional test for the server itself.
added the SSLSocketServer implementation

This commit includes the server class itself, along with unit tests.
added ServerAction to JoranConfigurator

This commit allows a SocketServer to be configured in a Joran
configuration file.
added nested component registry rules for SocketServer

Modified DefaultNestedComponentRules to include rules for SocketServer.
added nested component registry rule for SSL

The SSLSocketServer now allows an "ssl" element of type
SSLConfiguration.
improved error reporting when thread pool configuration is illegal
fixed a potential NPE in SSLSocketAppenderBase

If the appender configuration did not specify an SSL configuration, an
NPE would occur in method start when creating the SSLContext.  This NPE
would be trapped and logged, but subsequently the getSocketFactory
method would be called and would return null, potentially causing an NPE
further up the stack.  The fix is to ensure that the appender always has
a default SSL configuration, even if one is not specified in the Joran
configuration.

Unit tests for the SSLConfiguration already validate that an SSLContext
can be successfully created from an SSLConfiguration that is merely
instantiated, but has none of its properties configured.
added missing class header doc comments
improved doc comment for getSocketFactory method
initialize SocketServer.port to default used by SocketAppenderBase

The DEFAULT_PORT defined in SocketAppenderBase needed a public modifier
to allow it to be referenced in SocketServer.
Merge branch 'potentialNPEInSSLSocketAppenderBase' into LOGBACK-819
improved error logging in StreamClient

This should make it easier to diagnose SSL negotiation problems, in
particular.
continued work on documenting SSL configuration
added an example of using the SSL enabled components
continued work on documentating SSLSocketAppender

These edits integrate the documentation for SSLSocketAppender with
SocketAppender, taking advantage of the similarities of configuration
and examples.
reorganized SSLSocketAppender examples to correspond to updated documentation
removed unused SSL example classes and configuration
fixed package name for example SocketServer
added examples and information on audit logging
addressed various issues noted while testing SSL examples