Krun options

**please review**

* use JCommander for krun
* clean up krun frontend to be more generic
* fix some hacky behavior in some of the options
checkIsFile is checking that if the output already exists that it's a file. I will add comments on the functions though.