Adds pre and post launch command config keys to SoftwareProcess

This will do for now, but it doesn't assert that things were executed at the right time.

I'd probably have used a VanillaSoftwareProcess that has a `LAUNCH_COMMAND` of `echo inLaunch >> "+tempFile.getAbsoluteFile()`. I'd have pre launch doing ``echo inPreLaunch >> "+tempFile.getAbsoluteFile()` etc. My assertion would then be that the file contained the lines (in order) of inPreLaunch, inLaunch, inPostLaunch.

Note I'm a big fan of really boring names like "inPreLaunch" rather than "foo" as it's really easy for someone looking at the code + results to see what is happening. My tests use things like "myPassword" - if this value ends up in the wrong place, it's easy to see what happened.