This updates the guest capabilities to run in as few communicator
commands as possible. Additionally, it fixes a number of issues around
hostname and idempotency.
This patch was tested against:
- puphpet/debian75-x64
- debian/jessie64
- debian/wheezy64
with custom networking, custom hostname, and rsync shared folders.
If guests have the following capabilities, automatic NFS client
installation will be done:
* nfs_client_installed - Checks if the NFS client is installed
* nfs_client_install - Install the NFS client
Support is already in for Debian, Ubuntu, RedHat, CentOS, and Fedora
I don't use `activated` here because I'd really like to optimize
performance as much as possible, and loading files from disk is
generally slow. So instead of using `activated` I load the file at the
last possible moment which is when the exact class is being requested.
I don't think many people will do this outside of the core, and I'm not
too concerned.