Guaranteeing the execution of Dispatcher::postDispatchSignal()
Job directory creation in Dispatcher

Added a Dispatcher::createJobDirectory() virtual function that should be implemented to create a directory for temporary job specific files, and return its path. This function gets called in Dispatcher::dispatch(), and subsequent calls to Dispatcher::jobDirectory() will return its result.
Added bool argument to Dispatcher::postDispatchSignal()

This argument will be True if the dispatch process was successful, False otherwise
renamed 'jobDirectory' plug to 'jobsDirectory'
removed public virtual Dispatcher::createJobDirectory()
Fixed project.py startup file for renamed Dispatcher plug.
Reordered Dispatch job directory creation.

It now creates the directory _after_ it validates the nodes, so it won't needlessly create a directory in the case that it's going to throw anyway.
Merge branch 'davidsminor-dispatcherTweaks'