Added a .gitignore file which currently just ignores Vim swap files.
Massive code refactoring!

- The Game class is no longer a singleton! The one instance is created
in the main function, it is not globally accessible.

- I am now using #pragma once as an include guard compared to
#ifdef/#define/#endif since it feels cleaner... Its also going to be
supported anywhere I go, so what the hell!

- #include <SDL/SDL.h> has been replaced with #include "SDL.h" since
that's apparently how you are supposed to do it!

- New ABCs: EventHandler, RenderableEntity, and FontRenderer. is now
using an actual stack!

- Event System: every EventHandler (including GameStates) handle events
by being passed the SDL_Event. See src/EventHandler.h for more
information, you'll get it! Anyway, this system ensures that all events
are handled *and* it allows for generic manipulation of EventHandlers which
may or may not happen in the future! Speaking of events, the files
src/EventState.cpp and src/EventState.h have been removed.

- Font Rendering: Font rendering is now achieved by implementing the
ABC, FontRenderer, this allows for different types of font rendering at
runtime. So far, there is only one implementation, MonoTextRenderer, which
just renders text in two colors, background and foreground. It is the
default, at least it will be!

- The Game is no longer a singleton! It was really bugged me how all
functions could modify the Game and I wouldn't know, *shudder*
*shudder*.

- The GameState management system is now using an actual stack!

- The GameState class provides a scene graph(?) for implementations to
use. Basically, for anything to render, it needs to be passed back to the
GameState. It's fairly cheap, being based off of pointers...

- All documentation, when possible, has been moved to the implementation
file!

- Exceptions, mainly in the render_text function, have been replaced
with the new crash() function, this function spits out a message passed
in, then std::abort()s... This function has been put in a new file pair
for common free functions: common.h and common.cpp.

- Some documentation is missing, but I'm still working on that!