feat(meta_data): Add partial support for meta_data.json

Refactored to allow user_data and meta_data to be parsed and applied
the same way. Added support for setting the hostname and ssh keys via
the metadata.
The format of public_keys is a map of key group names to ssh keys. The group name is just some extra info from Openstack. All keys are to be applied to the system's admin user.