Slimmed Down the Kernel

After drawing up a simple flow diagram for how the game navigates
between views, I thought it best that a lot of the functions that were
the domain of the kernel be moved out of the kernel and into their own
classes.

* I extended the built in CardLayout with a custom FatalCardLayout that
functions as a superset of an instance of that class. The custom class
has a few helper methods to reduce the amount of code necessary to
access views as long as the class in question has an instance of the FCL
generated by the kernel (via parameter, for example).

* ImagePanel and MainMenuPanel are moved out of the kernel and into
their own classes in the new panels package. MainMenuPanel is passed  a
referential instance of the screen object (which is still the domain of
the kernel) so that it can act appropriately when the user wishes to
quit. Think of it as the kernel giving that particular panel the
permission to do what it needs to do without having to be within the
kernel to do it.

More documentation and a scan of my thoughts are coming in the next
commit.
Added Documentation and OptionsPanel

Another view has been created and added to the game which corresponds to
the options menu. Documentation has been added to some classes.
Updated Documentation

The documentation in the README has been updated with the names of
everyone involved in the project and a basic overview of it, which is so
far one sentence long. I created a new documentation folder where I
included two scans of sketches I made to help the preplanning stage.

The order that panels are initialized has changed. Now, most of the
loading takes place in the thread in the loadMaterials() class and the
try-catch block that halted the thread for five seconds has been
removed. The result is that the loading screen is essentially skipped
for now.