Normalize context data for user providers

This commit makes all user modules use __context__ in the same place,
and have the context variables be named the same. This is so that the
user state can clear the context data, allowing it to be able to tell
what has changed.

Additionally, this commit also reverts some changes that I made a couple
week ago. I was looking for a less wasteful way to get user data for a
given user, and the user state was running user.getent and then looping
through the list of user info dicts. I added some code to the various
user.getent providers at that time that allowed getent to optionally
return the info for a single user. It turns out, the user providers
already have a function that does this: user.info. The user state has
been updated to call user.info rather than user.getent, and the
additional logic that was added to the getent functions in a558d84,
449b1e2, 44ec713, and 031f8f6 has been removed.
groupadd.py: normalize context variable name for group.getent
Add __context__ support for group.getent

This commit adds the same __context__ support present in groupadd.py to
the following providers: pw_group.py, solaris_group.py, win_groupadd.py
salt.modules.postgres: handle empty passwords correctly

The 'password' and 'rolepassword' variables should not be evaluated as
booleans, as this will treat empty passwords as password not given.
Merge pull request #4372 from terminalmage/issue4336

Properly detect changes to groups made by user states
Merge pull request #4374 from spacedentist/develop

salt.modules.postgres: handle empty passwords correctly
Add maxdepth to file.recurse (fixes #2788)
Remove unnecessary comment, PEP8 fix
fix debian/control to use python2.6
Merge pull request #4379 from basepi/maxdepth2788

Add maxdepth parameter to file.recurse state
Merge pull request #4380 from memotype/develop

fix debian/control to use python2.6
Fix user.info to always return a list
Merge pull request #4382 from basepi/userfix

Fix user.info to always return a list
* fix bug in _run_psql() with password handling
* use password through PGPASSFILE file
* fix checking maintenance_db and runas params: '' and None is equal
* fix bug with escaping in psql_query(), hope default delemiter and quote is enough
* psql_query() now returns list instead of dict, just according table nature
* add gathering tablespace parameter of databases in db_list()
* remove `locale` argument of db_create(), which is probably obsolete
* add db_alter() function for changing db parameters
* present() state now tries to fix db params if it's needed and possible
  (what we disscussed in issue #4164)
* fix pep8, formatting and double quotes
This breaks the syndic, but fixes the tests

This also adds the code needed to get the syndic going again.
Merge branch 'develop' of https://github.com/saltstack/salt into develop
do remove PGPASSFILE only when password is set
Make gen_event get ful returns
Ref the local client instance when gathering event data
kill stray print