specify buildslave subcommand function in it's Options class

Use subcommandFunction class variable of the subcommand's Option flag
to specify the implementing function. This is the same style used in
master cli commands implementation.
test handling of invalid arguments to 'buildslave' cli command

Added unit tests on code in buildslave.scripts.runner.run() that
handles invalid command line arguments.
unit test successful invocation of 'buildslave' cli command
unit test options parsing for 'buildslave' command without arguments

Test that buildslave.scripts.runner.Options class flags invocation of
'buildslave' command without arguments, as invalid.
unit test handling of '--verbose' option for 'buildslave' command
unit test handling of '--version' option for 'buildslave' command
use StdoutAssertionsMixin to check prints to stdout
added unit tests buildslave Options classes
tests: move IsBuildslaveDirMixin class to misc module

Make it possible to use IsBuildslaveDirMixin class from other
test modules.
don't call isBuildslaveDir() twice on buildslave restart

Broke out code to start buildslave process into a utility function
startSlave(). Use it from restart() and start().