Many exceptions got an improvement due to changed class or description or details it is providing.
Is not complete, needs to be done in patches in the regions, where it is needed, since some are just
swallowed.
Removed total usage of pure RuntimeExceptions to 0.
Deprecates the old usage of the AEItemDefinitions via the direct method access of
* blocks()
* parts()
* items()
* materials()
and thus use the new re-direct via definitions().
All definitions are now initialized, no matter what. But SubItems, Items and Blocks are not registered, if by chance are disabled.
Reworked whole Version Checker with an extensible interface to add any other service later on easier.
The version checker now has its own config file, to collect the different options and extract them from the main config file.
In that you can specify how fine the versions should be checked.
Replaced String concat in loops with StringBuilder (performance)
Replaced for with keySet + Map.get() through for with entrySet (perf)
Changed inner classes to static classes, mostly struct like (memory)