DOC: Use gender neutral language

This patch updates the documentation files and code comments to avoid
the use of gender specific phrasing in favor of "they" or "it".
diff --git a/CONTRIBUTING b/CONTRIBUTING
index 638a646..88733e1 100644
--- a/CONTRIBUTING
+++ b/CONTRIBUTING
@@ -279,7 +279,7 @@
      error handling roughly represents half of the code, and that's about 3/4 of
      the configuration parser. Take the time to do something you're proud of. A
      good rule of thumb is to keep in mind that your code talks to a human and
-     tries to teach him/her how to proceed. It must then speak like a human.
+     tries to teach them how to proceed. It must then speak like a human.
 
    - The third most important level is the code and its accompanying comments,
      including the commit message which is a complement to your code and
@@ -1002,7 +1002,7 @@
     and removed in a future version.
 
   - send a new patch iteration without taking *all* comments from previous
-    review into consideration, so that the reviewer discovers he/she has to do
+    review into consideration, so that the reviewer discovers they have to do
     the exact same work again.
 
   - "hijack" an existing thread to discuss something different or promote your
diff --git a/doc/architecture.txt b/doc/architecture.txt
index 8174b5d..f359dd7 100644
--- a/doc/architecture.txt
+++ b/doc/architecture.txt
@@ -703,7 +703,7 @@
  - if a request does not contain a cookie, it will be forwarded to a valid
    server
  - if a request contains a cookie for a failed server, haproxy will insist
-   on trying to reach the server anyway, to let the user finish what he was
+   on trying to reach the server anyway, to let the user finish what they were
    doing. ("persist" option)
  - if the server is totally stopped, the connection will fail and the proxy
    will rebalance the client to another server ("redispatch")
@@ -798,7 +798,7 @@
   # /etc/init.d/httpd stop
 
 The associated backup server will in turn fail, and if any client still tries
-to access this particular server, he will be redispatched to any other valid
+to access this particular server, they will be redispatched to any other valid
 server because of the "redispatch" option.
 
 This method has an advantage : you never touch the proxy when doing server
diff --git a/doc/coding-style.txt b/doc/coding-style.txt
index d60a876..5f4faee 100644
--- a/doc/coding-style.txt
+++ b/doc/coding-style.txt
@@ -986,7 +986,7 @@
 It is very common for macros to do the wrong thing when used in a way their
 author did not have in mind. For this reason, macros must always be named with
 uppercase letters only. This is the only way to catch the developer's eye when
-using them, so that he double-checks whether he's taking risks or not. First,
+using them, so that they double-check whether they are taking a risk or not. First,
 macros must never ever be terminated by a semi-colon, or they will close the
 wrong block once in a while. For instance, the following will cause a build
 error before the "else" due to the double semi-colon :
diff --git a/doc/configuration.txt b/doc/configuration.txt
index 93137ca..1c6c846 100644
--- a/doc/configuration.txt
+++ b/doc/configuration.txt
@@ -9868,7 +9868,7 @@
   This statement is useful on monitoring displays with a permanent page
   reporting the load balancer's activity. When set, the HTML report page will
   include a link "refresh"/"stop refresh" so that the user can select whether
-  he wants automatic refresh of the page or not.
+  they want automatic refresh of the page or not.
 
   Though this statement alone is enough to enable statistics reporting, it is
   recommended to set all other settings in order to avoid relying on default
diff --git a/doc/lua.txt b/doc/lua.txt
index 743276d..96c2043 100644
--- a/doc/lua.txt
+++ b/doc/lua.txt
@@ -381,7 +381,7 @@
 set in the index [0] of the array. The metatable entry "__tostring" returns the
 object name.
 
-The Lua developer can add entries to the HAProxy object. He just works carefully
+The Lua developer can add entries to the HAProxy object. They just work carefully
 and prevent to modify the index [0].
 
 Common HAproxy objects are:
diff --git a/doc/management.txt b/doc/management.txt
index 7346d63..adbad95 100644
--- a/doc/management.txt
+++ b/doc/management.txt
@@ -467,7 +467,7 @@
 the whole restart mechanism.
 
 First, an existing haproxy process is running. The administrator uses a system
-specific command such as "/etc/init.d/haproxy reload" to indicate he wants to
+specific command such as "/etc/init.d/haproxy reload" to indicate they want to
 take the new configuration file into effect. What happens then is the following.
 First, the service script (/etc/init.d/haproxy or equivalent) will verify that
 the configuration file parses correctly using "haproxy -c". After that it will
diff --git a/doc/peers-v2.0.txt b/doc/peers-v2.0.txt
index 344cb56..af2bc37 100644
--- a/doc/peers-v2.0.txt
+++ b/doc/peers-v2.0.txt
@@ -250,7 +250,7 @@
 Remote Table Id is the numeric identifier of the table on the remote side.
 Update Id is the id of the last update locally committed.
 
-If a re-connection occurred, the sender should know he will have to restart the push of updates from this point.
+If a re-connection occurred, the sender should know they will have to restart the push of updates from this point.
 
 III) Initial full resync process.
 
@@ -261,7 +261,7 @@
 local process to push all known ending with a Resync Finished Message or a Resync Partial Message (if it it does not consider itself as full updated).
 
 A new process will wait for a an incoming connection from a local process during 5 seconds. It will learn the updates from this
-process until he will receive a Resync Finished Message or a Resync Partial Message. If it receive a  Resync Finished Message it will consider itself
+process until it receives a Resync Finished Message or a Resync Partial Message. If it receive a  Resync Finished Message it will consider itself
 as fully updated and stops to ask for resync. If it receive a Resync Partial Message it will wait once again for 5 seconds for an other incoming connection from a local process.
 Same thing if the session was broken before receiving any "Resync Partial Message" or "Resync Finished Message".
 
diff --git a/doc/proxy-protocol.txt b/doc/proxy-protocol.txt
index fc1ca4a..0208afc 100644
--- a/doc/proxy-protocol.txt
+++ b/doc/proxy-protocol.txt
@@ -529,8 +529,8 @@
             uint8_t value[0];
         };
 
-A receiver may choose to skip over and ignore the TLVs he is not interested in
-or he does not understand. Senders can generate the TLVs only for
+A receiver may choose to skip over and ignore the TLVs it is not interested in
+or it does not understand. Senders can generate the TLVs only for
 the information they choose to publish.
 
 The following types have already been registered for the <type> field :
@@ -854,8 +854,8 @@
 Implementers should be very careful about not trying to automatically detect
 whether they have to decode the header or not, but rather they must only rely
 on a configuration parameter. Indeed, if the opportunity is left to a normal
-client to use the protocol, he will be able to hide his activities or make them
-appear as coming from someone else. However, accepting the header only from a
+client to use the protocol, it will be able to hide its activities or make them
+appear as coming from somewhere else. However, accepting the header only from a
 number of known sources should be safe.
 
 
diff --git a/src/cli.c b/src/cli.c
index c1964df..da6932f 100644
--- a/src/cli.c
+++ b/src/cli.c
@@ -1725,7 +1725,7 @@
 	memset(&msghdr, 0, sizeof(msghdr));
 	/*
 	 * First, calculates the total number of FD, so that we can let
-	 * the caller know how much he should expects.
+	 * the caller know how much it should expect.
 	 */
 	px = proxies_list;
 	while (px) {
diff --git a/src/haproxy.c b/src/haproxy.c
index c3bc1f0..c6f7394 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -3370,8 +3370,8 @@
 		exit(1);
 	}
 
-	/* If the user is not root, we'll still let him try the configuration
-	 * but we inform him that unexpected behaviour may occur.
+	/* If the user is not root, we'll still let them try the configuration
+	 * but we inform them that unexpected behaviour may occur.
 	 */
 	if ((global.last_checks & LSTCHK_NETADM) && getuid())
 		ha_warning("[%s.main()] Some options which require full privileges"