Reverse Proxy Support

When axes sits on an app that is hosted on a server behind a reverse proxy, such as nginx for example, a single user can lock out all users when they fail their given number of login attempts since all users are coming from the same address due to the proxy.  

I put in some checks for the HTTP_X_FORWARDED_FOR header (as a default) and put some settings in that will allow a user to set whether the app is behind a reverse proxy and, if necessary, what header value will have the remote users ip address.