Fix mount.active command on FreeBSD.

Uses `mount -p` on FreeBSD as neither of the `/proc/self` files
currently used to determine active mounts exist on FreeBSD systems.
Implemented XenAPI backend as a 'virt' __virtual__ module to handle the Xen hypervisor
Ensure mount options come before special and node.

Fixes calls to mount where an fstype is specified.
Add Xen DomU detection for FreeBSD.
Removed useless commands and added Xen dom0 support for NetBSD
Make pkg state work with Windows packages
Merge pull request #5180 from UtahDave/develop

Make pkg state work with Windows packages
add missing globals
Merge pull request #5181 from UtahDave/develop

add missing globals for Windows stuff.
Use .next() instead of dummy loop, Fix #5120
Fix my stupidity (leftover `:`)
fixed: TypeError in pkg._find_install_targets when version is None
Get proper Windows full pkg name
Merge pull request #5185 from UtahDave/develop

Get proper Windows full pkg name
Merge pull request #5169 from iMilnb/develop

Implemented XenAPI backend as a 'virt' __virtual__ module
Merge pull request #5182 from basepi/virtrunner5120

Use .next() instead of dummy loop, Fix #5120
Merge pull request #5183 from sibsibsib/develop

fixed: TypeError in pkg._find_install_targets when version is None
Merge pull request #5184 from s0undt3ch/develop

Work around `__file__` `NameError` thrown by `bbfreeze`. Fixes #5172.
Ensure mount options in remount come before special + node.

Fixes calls to mount where an fstype is specified.
Merge pull request #5188 from geoffgarside/freebsd-xen

Add Xen DomU detection for FreeBSD.