Merge pull request #267 from RobertBColton/master

Graphics Systems Common Headers and Float Precision
Makes fps-handling more performant.

Previously, "usleep(1)" was used to sleep when handling the fps.
While this should not cause any issues when under heavy or medium
load, since there would be little sleeping then, it may cause
issues in cases with no or light load, especially on systems with
very high sleep resolution. This commit should eliminate or reduce
that issue considerably by increasing the time slept depending
on how much time ought to be slept. The implementation still
seeks to be conservative, in order to avoid oversleeping.
Fixed texture binding and drawing function decl.

-Fixed texture binding. This fixed the bug where drawing a circle before
drawing a text would make the circle invisible. That was because texture
was bound to 1 while enigma::bound_texture was 0. This broke
texture_use() and texture_reset() which made draw_circle() (and many
other functions which use texture_reset()) to draw a circle with a bound
texture which made it invisible.
-Fixed some types so it actually compiles. Robert will probably break
them again with his scalar changes. We really need to set up those tests
so bugs like these could be noticed before commiting.
Merge branch 'master' of git://github.com/RobertBColton/enigma-dev into Merging_Stuff
Merge remote-tracking branch 'upstream/master'

Conflicts:
	ENIGMAsystem/SHELL/Graphics_Systems/OpenGL3/GL3d3d.cpp
	ENIGMAsystem/SHELL/Graphics_Systems/OpenGL3/GL3primitives.cpp
	ENIGMAsystem/SHELL/Graphics_Systems/OpenGL3/GL3surface.cpp