add GerritChangeFilter

Its not very clear for people how to use gerritchangesource to filter
gerrit change events, and create builds.

add GerritChangeFilter, which is a simple general purpose filter, which
manage most of the changefilters needs

doc + tests

and some whitespace fixing in the doc.

Signed-off-by: Pierre Tardy <pierre.tardy@intel.com>
gerritfilterbranch: more factorization

This comes at the prize of a little bit of complexity

Signed-off-by: Pierre Tardy <pierre.tardy@intel.com>
gerritchangesource: fix grouping for Nightly schedulers

for nightly and post-commit style schedulers,
you really need to have the branch to be the real gerrit branch
or the list of changes in the UI will be incorrect

This is a simple way of implementing it, probably by separating the
change grouping to the notion of change branch

Signed-off-by: Pierre Tardy <pierre.tardy@intel.com>
gerritchangesource: test branch is branch for event type != changeset-created

and some cleanup of failUnless* API usage

Signed-off-by: Pierre Tardy <pierre.tardy@intel.com>
Fix shell hangs on checkconfig command when using http steps
Add sharedSession to prevent blocking session
Fix restart hang, close session at the end of the reactors
Add request status code as description step is  done
Add content log
Fix httpstep tests
Fix W293 blank line contains whitespace
Wrong error messages for a failed rebuild
Don't pass HEAD to git describe with --dirty

The 'git describe' manual explicitly distinguishes --dirty as not
taking a commitish, so don't pass one.  Fixes #2764.
fix review commentsa

+import reorder
Stop doing builds for merged in commits.

Those commits have already been tested by buildbot in the past. Only
the merge itself needs to be tested.
Add mode and method of git step to renderables
Update index before applying try patch with git.
Previous commit was missing unit test changes
pep8
Correct isinstance of str by basestring

Change isintance(..., str) by isinstance(..., basestring)