Beginning particle systems system.
Implemented basics of particle systems system.

The system has been implemented as an extension.

Simple particle types, particle systems and
particle emitters can be created and changed.
Many features are missing,
including automatic updating and drawing.
A particle system can still be updated and drawn
by using the part_system_update and
part_system_drawit functions.
Improvements and fixes to particle systems, added depth and auto-drawing.
Added automatic updating to particlesystems.
Minor fixes to particles.
Removal of copy-pasted comment.
Moved particle systems from Extensions to Graphics_Systems.
Merge branch 'master' of https://github.com/forthevin/enigma-dev
Additions and bugfixes to particle systems.

Added depth and sprite functions,
fixed issues with alpha and color functions,
fixed particle constants,
implemented more wiggling and increasing for particle types,
implemented emitter burst.
Fixed and tested keyboard_lastchar on Linux and Windows.
Fixed file opening functions, giving control back to the os of the file's working directory.
Merge pull request #46 from RobertBColton/master

Removes polygone's dumbshit "Let's do the OS's job and prefix the Working Directory to all file paths" hack.
Returned working directory control to the os in almost all of the resource adding functions and other load functions.
Merge pull request #47 from RobertBColton/master
Implemented part_type_color_{mix,rgb,hsv}.
Implemented remaining particle type functions.
Merge branch 'master' of https://github.com/enigma-dev/enigma-dev
Fixed bug in particle type color mixing.
Merge remote-tracking branch 'upstream/master'
Removes `using namespace std;' directive from main headers.