Add cleanup routine to synced folder plugin implementation
core: Retrofit some test for Method support on Action::Runner
core: Fix hooking when using a `Method` object as a callable on action runner
providers/virtualbox: support DHCP interfaces for NFS

Previously, we required a host-only interface with a static IP for NFS
to work in VirtualBox, because we needed access to the guest's IP in
order to properly configure mount commands.

After boot, VirtualBox exposes the IP addresses of a guest's network
adapters via the "guestproperty" interface.

This adds support for reading VirtualBox guest properties to the
VirtualBox driver and utilizes that support to prepare NFS settings,
which removes the necessity for a static IP for NFS to work.

In this commit we also start building out scaffolding for unit testing
vbox actions and drivers.

Test plan:
 - Prepare a Vagrantfile with the following:
   * private network with type: :dhcp
   * synced folder with nfs: true
 - Boot a VM from this Vagrantfile using the virtualbox provider
 - Machine should boot successfully with working synced folder
Loosen net-ssh dependency [GH-2573]
Merge pull request #2565 from mitchellh/f-box-checksum

Implement box checksumming
Update CHANGELOG
core: build action builder if responds to call
Merge pull request #2569 from mitchellh/fix-hook-with-methods

core: fix hook with methods
Merge pull request #2560 from phinze/vbox-nfs-dhcp-support

providers/virtualbox: support DHCP interfaces for NFS
Update CHANGELOG
communicators/ssh: add -E to sudo to preserve env
guests/linux: --no-wait on emit [GH-2564]
Update CHANGELOG
provisioners/chef: fix validate return so that it is properly formatted
provisioners/docker: make sure version is correct type, fix Ruby warning
provisioners/docker: style nitpick on unless
provisioners/docker: allow images to be configured with images:
provisioners/docker: simplify run, output which are running
provisioners/docker: only allow 'args' special