feat(config-drive): Add support for reading user-data from config-drive

The -config-drive flag tells cloudinit to read the user-data from
within the config-drive (./openstack/latest/user-data).
refactor(userdata): Move userdata processing into a function
feat(interfaces): Add support for interfaces file

This adds the ability for cloudinit to parse a debian interfaces
file and generate the coresponding networkd configs.
test(interfaces): Add tests for network conversion

These tests should be an exhaustive set of tests for the parsing
of Debian interface files and generation of equivilent networkd
config files.
add(netlink): import dotcloud/docker/pkg/netlink
feat(convertNetconf): Add support for network config conversion

Adding the flag -convertNetconf which is used to specify the config
format to convert from (right now, only 'debian' is supported).
Once the network configs are generated, they are written to
systemd's runtime network directory and the network is restarted.
feat(systemd): Update the systemd unit files to use configdrive

This makes it so that /media/configdrive can be used for user-data
and network configs.
Merge pull request #124 from crawford/networkd

feat(networkd): Adding support for debian-interface-to-networkd conversion