Added new "osfinger" grain

This grain is a unique identifier for a given OS and OS version that can
also be used as the key in a dictionary. For example a fingerprint for
CentOS 5.9 would be "CentOS-5", a fingerprint for Precise would be
"Ubuntu-12.04".
Handle state delcarations not formed as a list, Fix #6544
Move connection_args.update() to its own line
Fixed check for None dbc
Add a test mode to mount.set_fstab

This allows the fstab to be checked to see if changes will be made. This
does not change the return value of this function in any way, but just
prevents the fstab from being rewritten if test=True.
Fix regression in mount.mounted state, improve reporting

This fixes the regression from #6545. In addition, running this state in
test mode now properly identifies if the fstab entry exists but needs to
be modified, and reports this in the state output.

Conflicts:
	salt/states/mount.py
Fix regression in binary package installation

Pull #6461 caused a regression in which binary package installs of
64-bit packages broke on 64-bit systems. This commit fixes that
regression.
Run git fetch after init
Add file_recv option to config file template
Add missing master configuration file parameters

This commit adds some recently-added master config options to the online
docs.
correct inaccuracy in cp.push docstring
pep8

Conflicts:
	salt/master.py
Add default value for file_recv master config option.

This prevents a traceback on the master when a minion runs cp.push and
no file_recv parameter is configured.
Added function filter_by to grains module

This will help to keep too much conditional logic out of Jinja templates
by allowing the creation of unobtrusive lookup tables.
Fix some formatting
Add config.merge function for merginc config values across sources
Use config.merge instead of config.option for scheduling, Fix #6201
Add a CLI example to config.merge