TerasologyEngine, some refactoring

Some refactoring in TerasologyEngine class, everything else is a consequence.

* reordered initial variables in related clusters where possible
* three engine state boolean variables made into one EngineState enum and added corresponding accessor methods, updated GameEngine interface accordingly
* renderingConfig is now its own variable initialized once instead of calling config.getRendering() multiple times in the class
* moved init() method's code to the constructor, refactored it adding support methods, updated GameEngine interface accordingly
* edited TeraEd and PC Facade to remove calls to no longer existing engine.init()
* reordered constructor-supporting methods: they are now in order of appearance and the have all been placed immediately after the constructor.
* renamed stopwatch variable from "sw" to "totalInitTime" for readability
* added an issue-pointing TODO regarding the Advanced Monitor

Many changes to TerasologyEngine, including most of these ones, had been previously discussed in PR #1108. I included in this PR only the least controversial (I think!). I will include some other changes from #1108 (i.e. javadocs) in a different PR.
Martin, you are all work and no play. =D But of course we better stick to something more professional now that we know what that is. I'll change it as you suggest in the next PR and if there are further suggestions we'll deal with them there.