Add NetBSD guest support
More specific Solaris <11 detection.

Note: This will probably break on Solaris 12+, but not certain of a better approach for now.
More specific Solaris 11 detection
core: don't use Tempdir for tests, use Dir.mktmpdir

Tempdir didn't work on Windows, just spun forever.
test: allow skipping certain tests on Windows
core: fix Windows failures on machine tests
core: fix tests failing on WIndows dueo to bad temp dir gen
core: fix more cases where ".path" was being called on strings
core: don't test fork(1) on Windows
core: test file writes for home dir perms

Creating directories for some reason was allowed in Windows, but writes
would fail later.
core: be sure to close tempfile handle so Windows can delete it
synced_folders/rsync: run hostpath through fs_real_path

This fixes issues with drive letter casing on Windows
core: add test for fs_real_path on Windows
core: environment tests passing on Windows
provider/virtualbox: fix NFS tests on Windows
core: Respect VAGRANT_HOME everywhere

Use `VAGRANT_HOME`env var also for `Plugin::Manager` etc., not only in
the `Environment` class.
provisioners/docker: fix wrong variable usage

caught by @pda
Merge pull request #2837 from tmatilai/vagrant_home

core: Respect VAGRANT_HOME everywhere
core: tests for shared_helpers.rb

/cc @tmatilai
core: tests for more shared_helpers