Initial commit to add l7 loadbalancing features and tests

Check out https://developers.google.com/compute/docs/load-balancing/http/ for an overview of what this is.
Hmmm yes. Having a quick look it seems that most of these type adapters could be removed if the `@ConstructorProperties` annotations are moved to the "parent" classes, and the fields are annotated accordingly with the `@Named` annotation.

@ashmrtnz Is there any need for all these custom type adapters and "internal" classes instead of directly using the domain object model?