Better error handling in the TestHarness 

closes #3329

Missing required parameters will now cause the TestHarness to exit with a non-zero error code.
Is it important to set the filename to `''` ?

If so - it's not clear that you do that for every possible `return` statement in this function...