Changed return type of instance-returning functions to enigma::instance_t.

enigma::instance_t is typedef'ed as int in instance_system_base.h.

Also fixed bug in collision system None.
Fixed minor bug in instance.h.
Merge pull request #35 from forthevin/37cf8aa59e9d5b36a36ebb6dd4e7b094b96c75ab

A very basic implementation of particle systems
Fixed error in depth update.
Implemented particle shapes, and implemented
particle shape pt_shape_sphere.
Added 5 particle shapes.

Particle shapes added:
Pixel, disk, square, line, star.
Added 3 particle shapes.

Particle shapes added:
Circle, ring, flare.
Fixes the sleep function on Linux--it was getting eaten by its own macro.
Additions and modifications to particle systems.

Added basic color, added remaining shapes,
added lazy initialization for shapes.
Changed lighting to reuse id's instead of creating a new light
Fixes issue with Linux joystick API; imports missing sources into Code::Blocks project file.
Fixes bizarre behavior with Linux joystick API.

Linux freaks the fuck out if you don't return joystick device contexts before the game ends or before you attempt to reload them.
This commit changes the time during joystick load that the previous joystick is freed, and makes joysticks close() their device context on destruct.
Adds various properties to particle types.

Properties include color, alpha, size and gravity.
Fixed game_restart, such that the game start event is triggered.
Added enable_vsync()
Small function updates
Implemented and fixed various particle type functions, fixed action end game.

Implemented functions include orientation, step,
scale, alpha3, color3 and blend.
Wiggle and increment have been implemented for some functions.

Action end game was fixed on Linux.
Fixes action_end_game on Linux, and changes game_end() to signal the termination of the game after the events finish rather than dying immediately.
Merge in forthevin's identical fix
Fixed size and overflow error in fonts.