Load DHParameters from config file from a pem file - allows for things like 2048bit DHE
Make HTTP/HTTPS mismatch errors more friendly

Original patch from http://hg.openpanel.com/pound-sslpatched/raw-rev/90a2b1ae6bf4 by Peter van Dijk <peter@openpanel.com>

This patch adds two directives:
ErrNoSSL "my_friendly_error.html"
NoSSlRedirect "https://www.website.com"

Primarily this patch is concerned with what happens when a user tries to connect to an SSL port with a non-SSL connection.  For instance, http://www.website.com:443/

This cannot currently be controlled in pound, since the port is SSL, there's no way to redirect, and in fact the openssl library will fail negotiation so there's no opportunity for a friendly error unless we trap that case directly.

Using the NoSslredirect directive you can redirect to a https url.  Otherwise, ErrNoSSL will show in the browser window, alerting the user to the problem.
Implement backend session flushing
ThreadModel implementation

Implement a config option for pool (2.6 behavior) vs dynamic (2.5 behavior)
Revise threadpool implementation to eliminate spurious wake-up issues and get_thr_arg NULL warnings.

Thanks to Jacob Anderson <jwa@beyond-ordinary.com> for pthread suggestions
IncludeDir directive - includes a directory of config files (a la conf.d)

Increases the Include LIFO stack to 100 instead of 8
Includes all .cfg and .conf files within a given directory.
Implement ForceHTTP10 Directive and SSLUncleanShutdown Directive

ForceHTTP10 will force the downgrading of HTTP/1.1 connections to 1.0 connections
based on the UserAgent string.  Similar to BrowserMatch and SetEnvIf from Apache.
However, this allows forcing non-ssl connections, as well as SSL connections (noHTTPS11)
and do it based on the browser regexes, so we can be more specific than .*MSIE.*

SSLUncleanShutdown matches against the user agent, and if it matches, does the
mod_ssl unclean shutdown behavior.  Compliant behavior is now the default.
BackendCookie implementation

Each Backend has a BackendKey which uniquely identifies the backend.
When BackendCookies are enabled, pound will inject a cookie into the response that will tag the browser to the specified backend.

In this way session affinity is handled in pound, without any need for session support on the backend servers, and sessions will persist across pound restarts because they're stored on the browser side.
Implement PCRE based Dynamic Redirect support

Redirects can now be specified as Redirect, RedirectAppend or RedirectDynamic.
CertDir directive for loading certificates from a folder
OrURLs block, with valid URLs