Add another LoadBalancer generator test case

This time, with a particularly complex multi-protocol Pool and
corresponding VirtualServer.

This test currently fails, will be adding fixes to generator code and
test logic in further commits.
LoadBalancer Pool description is optional

If a description is not set, we should not send one.
LoadBalancer pool weight fix

Pool weight should be a string, despite being specified as an
integer.
LoadBalancer HeathCheckPort fix

Value must be a string, though we allow specification of it
as an integer in source config
LoadBalancer HealthCheck URI behaviour fix

Discovered that if an HTTPS health check is set to Mode TCP,
an 'Uri' element magically appears, though it is not possible to
set it via the API. Joy.
Handle HTTP cookie persistence for LoadBalancer