Fix the run logic so the mainClass setting is actually used when set.

This is one of those super hard to test scenarios where the "main class" being run is a from a different JAR (i.e. we'll never discover one).    More importantly, the run task wasn't using the configured main class due to, what appears to be, a refactoring mixup we didn't catch during code review of the new select-main-class warning.


Review by @eed3si9n cc @fommil