[MEDIUM] introduce the "url_param" balance method

Some applications do not have a strict persistence requirement, yet
it is still desirable for performance considerations, due to local
caches on the servers. For some reasons, there are some applications
which cannot rely on cookies, and for which the last resort is to use
a parameter passed in the URL.

The new 'url_param' balance method is there to solve this issue. It
accepts a parameter name which is looked up from the URL and which
is then hashed to select a server. If the parameter is not found,
then the round robin algorithm is used in order to provide a normal
load balancing across the servers for the first requests. It would
have been possible to use a source IP hash instead, but since such
applications are generally buried behind multiple levels of
reverse-proxies, it would not provide a good balance.

The doc has been updated, and two regression testing configurations
have been added.
diff --git a/include/types/backend.h b/include/types/backend.h
index 3c5273b..9089469 100644
--- a/include/types/backend.h
+++ b/include/types/backend.h
@@ -64,6 +64,7 @@
 #define PR_O_BALANCE_SH 0x20000000      /* balance on source IP hash */
 #define PR_O_BALANCE_L4 0x30000000      /* mask to match layer4-based algorithms */
 #define PR_O_BALANCE_UH 0x40000000      /* balance on URI hash */
+#define PR_O_BALANCE_PH 0x50000000      /* balance on URL parameter hash */
 #define PR_O_BALANCE_L7 0x40000000      /* mask to match layer7-based algorithms */
 #define PR_O_BALANCE    0x70000000      /* mask to extract BALANCE algorithm */