Use a null logger in the test environment
Move launch string building into Bowler::CLI

Building the list of apps to pass to the Foreman command should be the
concern of the CLI class than the DependencyTree.
Allow excluding a process using the --without option

This adds an OptionParser instance which extracts the -w and --without
option to build a list of processes which should be excluded.

These exclusions are removed from the list of processes to launch after
the dependency tree has been traversed.

There's improved end-to-end testing of the CLI class here too.
Only load the tree after parsing options

This prevents any exceptions being raised for a missing Procfile until 
we actually need a Procfile to exist.
Tidy up the options and add a --version option

The parameters are based on the conventions described at 
http://docopt.org/
Merge pull request #6 from JordanHatch/exclude-processes

Allow a process to be excluded using the --without option