Implements most of the particle effects.

Most of the system for particles and effects are done.
Only two effects are missing, namely ef_rain and ef_snow.
The remaining tasks before the particle systems system
is considered fully done are as follows:

Remaining effects: Implementing ef_rain and ef_snow.
Of interest is that their behaviour are dependent
on the width and height of the room they are in.

Optimization: The current implementation is focused
on being correct, and thus could be optimized
considerably. The plan for optimization is to profile,
and focus optimization efforts on the slowest parts.

Architecture: The current implementation is dependent on
the OpenGL graphics implementation, which is not great,
given that over 90% of the code of the implementation is
independent of any specific graphics system. It should be possible
to properly isolate the particle systems system, such that
the implementation can be used with several different
graphics systems. Furthermore, it should be possible to
turn it into an Extension, which would be useful to those games
that do not use particle systems or effects.
The architectural changes should also enable fixing a
current bug in how room changes are handled by the
particle systems system.