merge: These are the changes from the freebsd-static-networking branch.
fix: Skip lines from /etc/rc.conf not matching the pattern key=value.
new: Config for FreeBSD.

This doesn't differ much from the regular (linux) config, but currently
it helps while testing and setting up fbsd cloud instances.
fix: The correct path end with an s.
fix: To install the new freebsd sysvinit scripts, accept a new
sysvinit_freebsd argument. Specifying sysvinit will install the RH
scripts, which is wrong.
change: Cloud-init config should go under /usr/local since /etc/ is reserved
for base.
fix: Command (the binary) is cloud-init, not cloud_init.
change: C-i is installed in /usr/local/.
fix: Use -f to properly load the configfile.
new: Buildscript for installing on FreeBSD. This should do until a
proper port is created.
change: Add an important comment.
fix: More dependencies.
new: Some datasources (like Smartos) use dmidecode to gather some specific
information, so install it.
fix: Pass -y to growfs to keep it from asking for confirmation.
change: Create a symlink to python2.7, to make sure running plain python
works.
change: Make note of another python lib pypi takes care of.
change: Save and restore the SSH keys between builds.
fix: Set the environment var CLOUD_CFG to specify the location of
cloud.cfg since -f is not used for that.

Given the importance of this file/location, it's explicitly  beeing set
in the initscripts instead of trusting on something in /etc/defaults.
change: Install everything in the right location on both Linux (which
ofcourse already was good) and FreeBSD (which realy likes /usr/local
for this).
change: Cancel execution of several modules that are definately not
tested or supported yet.