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
Merge remote-tracking branch 'upstream/master'
Merge remote-tracking branch 'upstream/master'
Improved handling of fps in Linux and Windows.

Changes include using system time instead of
processor time. System time is used instead of
processor time, since it is generally more robust
and precise. Other changes include how
sleeping is handled, partly based on
dazappa's suggested changes.

The changes have been tested on Windows and Linux
to handle different types of load well, including
light load, light load with sudden and short heavy loads,
and constant heavy load.

High fps in Windows is handled more smoothly.
Fps in Linux is still limited to below 100.
The fps-handling code in Linux should scale if the
system is changed to allow more frames per second.
Changed default clock in Windows to high-resolution performance counter.

Changed clock in Linux from CLOCK_REALTIME to CLOCK_MONOTONE.
Also introduced clamping in Linux and Windows to ensure buggy
values does not cause issues.
Merge pull request #58 from forthevin/master

Improved handling of fps in Linux and Windows