Custom parameters for Loadbalancer integration

This changes allows the agent to send custom parameters to the loadbalancer. Previously only the agent name was sent to the loadbalancer. This is done by changing the agent part of the config file. The new parameter is called LoadBalancerParameters and contains one or more custom parameters. These are then chained together in the querystring when calling the loadbalancer's api.

"Agents": {
 "api-test": {  "LoadBalancerParameters": { "Partition": "prod1" } },
}

This PR also contains an addition to the ConfigReader so that it can match agent names using the regex range syntax. Asterisk wildcard matching exists already.

E.g. test[1-4] matches test1, test2, test3 and test4.

Example from config file:

    "Agents": {
            "testagent[1-3]": { "Environment" : "test1" },
            "testagent[4-6]": { "Environment" : "test2" }
    }