Proxy Server IP header support

This adds support for SMF for handling Proxy Servers, such as a CDN or Reverse Proxy.  We can now specify to do nothing, autodetect (SMF default) or only allow a single header to respond.  As well we setup allowed IP ranges. The main reason behind this is security and for ease of expandability to other headers that obscure proxy headers use.

I should note that most servers are supposed to handle these securely as it is, but it doesn't hurt for us to be sure as well.  This also adds a function to SMF which may be useful in the future, but for now was used for proxy servers that have you use CIDR entries.

Final note is Subs-Charset got pulled in on this.  It appears to be line ending differences that need fixed.  If needed I can attempt to remove it, otherwise I would just let us pull the changes and fix the line endings to match what we are now forcing with .gitattributes