Changed fps handling.

The changes to the fps involves the part of the fps handling
that deals with "jumps" after sudden but heavy loads (like doing a very expensive
computation in one step, while not doing much in the following steps).
The previous handling worked well on certain hardware, but may have caused trouble
on other hardware, due to its sensitivity to resolution and sleeping.
The new handling should be more robust on different hardware, and may
fix some of the previous issues encountered.
Cleaned up the OpenGL graphics systems and renamed the files Josh told me to.
Texture functions moved to their proper GLtextures.cpp/.h so the underlying
system may be revamped properly.
Refactored texture system to allow arb multitexturing and shader extensions
so custom model formats in the future will be able to support material
surfaces directly imported from a model editor of your choose or mat lab.
Merge pull request #71 from forthevin/master

Room changing
Merged Robert's pull request for Graphics Systems Cleanup.

From pull request:

"Cleaned up the graphics systems file names to what Josh want's them as. Also moved all
texture functions to GLtextures.cpp/.h where they belong for my rewrite of the underlying
texture system, before we rewrite the whole graphics system for VBO's. Go ahead and pull when ready."

A minor merge conflict involving d3d_draw_{cone,ellipsoid} was handled
and tested to work correctly.
Changed lives handling to be compatible with GM.

The "Out of Lives" event will now trigger
if and only if at least one change in lives have
happened that makes the value of the lives variable
go from positive to non-positive.
This is consistent with the behaviour of GM.

The default value of lives has also been changed to -1,
like in GM.
Fixed a minor bug I accidentally had my fail safe macro for accessing textures
out of bounds in the last push, my bad, I uncommented and my game works again.
You have to be able to pass -1 as a texture to the model drawing functions
meaning to not use a texture so that it will take the draw color instead.
I've also split the graphics engine into two now, one for compatibility,
and one for making use of OGL3 so that we can use VBO's and speed everyones
games up by about 100x.
Temporarily removed the new system to avoid merge conflicts.
Committed texture handling fix from Robert.
Split the graphics systems into two parts the one for compatiblity the other
for quality and performance. Pull when ready.
Merge pull request #74 from RobertBColton/master

Split Graphics System In Two
Updating license and copyright information in all graphics systems source and
header files.
Merge pull request #75 from RobertBColton/master

Updated Copyright Headers
Cleaned up and fixed minor issues in Graphics_Systems.
Updates particle system to the new graphics systems system.
Fixed lives resetting, such that they are only reset on
game start, and not on room start.
Refactored floors/walls/blocks in the new graphics system. Also fixed the
bind texture macro which wasn't memorizing the bound texture. Applied a patch
to the audio system, I wasn't originally using pointers.
Optimized that block code so that it checks and only calls draw range elements
once.
Merged Robert's pull request for Graphics Optimization/Audio Patch.

From pull request:

"Refactored walls/floors/cubes in the graphics system and doubled
the speed of games by using the currently bound texture
memorization macro. Also applied a patch to audio as I wasnt
originally using a pointer array, all tested and good. Pull when
ready."

Minor merge conflicts were handled.
The changes have been tested and confirmed to work.
Cleaned up the compiler output to look more professional and less obtuse.