PC Facade Improvements: argument handling, exception logging, using AutoCloseable engine

* Wrapped launch arguments handling and exception logging into their own methods. 
* Now taking advantage of the AutoCloseable interface implemented by the TerasologyEngine class, resulting in a more compact main method and a full handling/logging of all exception-triggering paths.

These changes had been originally discussed in PR #1108 and are the last potential changes to the PC Facade from that PR.
Just to make sure I'm understanding correctly, we are talking about having: 

    if (!GraphicsEnvironment.isHeadless() or !isHeadless) {
        logException(e)
    }

right?