Add DataCenterInfo and a few other abstractions:
* NetworkAddress - to represent multiple NICs on a server associated with
                   private and public IP and/or hostname
* InstanceInfoProvider - provides local InstanceInfo information
* DataCenterInfoProvider - provides information about server's own data center

This commit contains a refactored version of Avro transport, that is migrated
from dynamic JavaBean schema generation to explicit Avro IDL schema definition.
Auto-generation proved to be unflexible, and forced us to implement
workarounds, each time domin model was extended. Having Avro IDL has also a benefit
of applying it to non-Java Eureka clients, shall we stay with Avro afterall.