This introduces the Resource object which can be either a ClassFile or any other File type
ClassFiles get opened as a ClassViewer with mutliple BytecodeViewPanels
Everything else gets opened as a FileViewer
All of the components that update resources should now function as normal again
The decompiler gui API has been improved to use less boilerplate when adding a new decompiler
+ Refactored a lot of the GUI
+ Fixed a few bugs with the swing components and swing interaction
+ Includes #304
+ Added LAF theme selection
+ Moved the Visual Settings from the Settings menu to the View menu
+ Added a simplified tab names option