Add ability to pause build-slaves.

Signed-off-by: Tom Prince <tom.prince@ualberta.net>
Start implementing option to pause a slave.

Signed-off-by: Tom Prince <tom.prince@ualberta.net>
- New WIP for Clean shutdown.
initial master side P4() source step
removed defaultBranch argument which has no purpose. Improved API docs. Added P4:.. prefixing on logging.
added docs for P4 master side source step
address jaredgrubb's pull feedback
Builds on language environment patch from Alice for ticket 2419
As per irc discussion with tomprince, wrapped 'getElementsByTagName' in
try and added code for storing in Step log file. Addresses log.err issue
in pull request comment
Monkey patch recent gatherResults on old versions of twisted.

Newer versions of gatherResults support consumeErrors, which we would like to use.
Merge branch 'gatherResults'
- Changed graceful to clean.  Added also some docs.
Handle slave disconnections during build start better

This:
 - checks for a slave disconnection at the last possible moment
 - handles exceptions from startBuild's deferred better
 - treats errors in startBuild as EXCEPTION, not FAILURE

Fixes #2427.
Partial Test changes for 2419fix
comment about maybeDeferred use; better log.err message
Reference relevant bug.
Merge pull request #612 from djmitche/bug2427

Handle slave disconnections during build start better.
Use eventual.eventually more consistently.
- Fixed test_scripts_stop.py.  Changed short option from g to c. Fixed subfunction s/sighup/sigusr1
Merge branch 'eventually' of git://github.com/tomprince/buildbot