[WIP] I implemented uncaught exceptions handling and tried a new tactic.

In fixing issue #12 and other ClassLoader-related issues, I tried a new
tactic since the old one seemed to be flawed in that it would delegate
the loading to ClassLoaders that would basically recurse too much and ruin
things.

Also, I fixed some issues with the CIE system getting NullPointerExceptions
in the err() method and with not filtering the stack trace properly.

I removed the static non-nullary err() methods from the CIE class because
I think it would be unwise to use them. It causes confusion and I think
it would be better if the CIEs could be caught in certain cases (though in
those cases it would definitely still be best to make a class that extends
CIE and catch that instead).

Finally, I implemented uncaught exception handling from the CorundumHub
class. It just puts the exception in a CIE if it wasn't already one, then
uses the CIE err() method to process it. The CorundumExceptions from plugins
will be handled inside PluginThreads.


Signed-off-by: REALDrummer <conman.davey@gmail.com>