HPCC-12250 Allow pluggable interface to workunit creation

Initial work on splitting the workunit implementation so that Dali-specific code is isolated
I had gone off the idea of using *.ipp's ..
Though I can see the merit of a different include file if it is to be included by different implementation files.
In this case it looks like all the defined classes are implemented in workunit.cpp