metadata: Refactor common parts out of ec2
digitalocean: Add DigitalOcean metadata service
networkd: Fix bug causing bonding to always be loaded
datasource: Add FetchNetworkConfig

FetchNetworkConfig is currently only used by ConfigDrive to read the
network config file from the disk.
network: Add support for multiple addresses and HW addresses

Logical Interfaces can be assigned a hardware address allowing them
to match on MAC address. The static config method also needs to
support specifying multiple addresses.
digitalocean: Add support for processing network config
test: Refactor interface tests a little