Add get_selections() and set_selections() for dpkg.

This module will enable to freeze a package at a certain version, with the "hold" state.
Add TODO, amend later... FIXME.
Merge my dpkg-selections branch with develop.

Resolved conflicts in modules/apt.py.
Fix merge mistake.

urllib2 and json is part of standard Python.
Use yaml.safe_load()
Add another TODO
Use code-block

As per @terminalmage suggestion.
Added mknod functionality for fifo pipes, block devices, character devices, and ancillary functions to the salt file module.
Merge remote-tracking branch 'upstream/develop' into feature_mknod
fixing duplicate output of modjk
changing has_key function
Improvements to the windows package manager page.

The aim is to give a bit of a high level intro and also to
aid troubleshooting.
Syntax of versionadded
Merge pull request #6997 from joehealy/windows_package_manager_doc_improvements

Improvements to the windows package manager page.
distutil.version is not in distutil all
check for multiple strings in the test
remove commented out code
use the comparability of LooseVersion to do version checking
Merge pull request #7002 from riverajo/postgres-distutil

Postgres distutil
Merge pull request #6995 from ranl/modjk

fixing duplicate output of modjk