In a perfect world, a Custom Project would be a little more like the AlgoWizard, where you'd have its own set of variables, which could be used in the various tasks in place of the present hard-coded responses for each task parameter. There would also be the ability to extend it programmatically. As one example, there would be a "Call Custom Function" Task, which would allow you to do processing in a code snippet, with full access to the object model of the Custom Project. You should also be able to get/set variables from the Custom Project's global set.
I know this sounds like a big upgrade, but if were achieved, we'd be able to use Custom Projects to do pretty incredible automated processing.