Adds sigtermTime to RemoteShellCommand

Adds the parameter sigtermTime to RemoteShellCommand. If sigtermTime is
not None, the buildslave will fire SIGTERM and wait for sigtermTime
seconds before firing SIGKILL. This fixes trac ticket #751.
Adds test_sigterm and updates tests to reflect new parameter
Documentation updates for sigtermTime
Adds sigtermTime default to fake runprocess
StringDownload step: more informative error message

Changed error message when buildbot.steps.transfer.StringDownload
is instantiated with invalid 'mode' argument. Include more context
on which 'mode' is invalid.
transfer steps: broke out slave check code

Broke out code to check slave version to it's own function.
transfer steps: broke out _TransferBuildStep init code

Move common code of all transfer steps to _TransferBuildStep.__init__().
This fixes pylint warning: 'E0203 (access-member-before-definition)'
unit test on buildbot.steps.transfer._FileWriter.__init__()

Test creating an instance of _FileWrite class. Test the code path
where destfile's parent directory is created.
Docs: Fix configuration example
ec2buildslave: Fix import error with EC2LatentBuildSlave

The migration module buildbot.ec2buildslave tried to import
EC2LatentBuildSlave from buildbot.buildslave.libvirt, but that class
lives in buildbot.buildslave.ec2, causing a import error when loading
the module.
Master side source steps: Implemented Darcs source step on master side
add test_assert_raises_regexp monkeypatch on master
Merge branch 'trans-steps-fixes' of git://github.com/elmirjagudin/buildbot
Merge branch 'master' of git://github.com/Ringdingcoder/buildbot
Merge branch 'topic/ec2buildslave_import_error' of git://github.com/olof/buildbot
Merge branch 'darcs-squash' of git://github.com/srinupiits/buildbot
remove redundant 'return' statement
enable E0101 (return-in-init) pylint check
Waiting for sigterm is now nonblocking
Check slave version before supplying sigtermTime param