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