Merge pull request #225 from RobertBColton/master

Removed Actions
Moved var_map to object_locals.
Added GM game settings back
Removes hypot from instance_nearest/furthest calculation.

I was talking to Robert about the system and instance_nearest came up, and I thought to myself, I wonder if it uses hypot(). Sure enough, it did. Fix'd.
Fixed updating of physics extensions; fixed header guards; other.

The physics systems are now automatically updated, such that
the user does not have to manually update them. It has been
implemented by creating a general way to add callbacks for
execution just before the collision events (if any) are performed.

There were also some errors related to header guards in the
physics systems, including a header guard name shared between
two headers. The header guard error was fixed, and the header
guard names were changed to decrease the risk of collision.

Since the updating of collisions are now handled by callbacks
instead of having a function in the collision system, that part
of the collision system interface has been removed.

The changes to the two physics systems, Box2D and StudioPhysics,
as well as the changes to the 4 collision systems, BBox, BBox3D,
None and Precise, have been tested and verified to work.

Fixes #203.
Merge branch 'master' of https://github.com/enigma-dev/enigma-dev
Refactored particle and graphics; fixed minor error; moved game_restart.

The graphics systems interface previously required that several functions
specific to the particles extension were implemented. There were also
issues with turning off the extension for certain graphics systems.
To handle these issues, most of the handling was separated into
a callback system. Two features have been moved, including the
updating of particle systems, as well as the clearing of particle
effects after a room ends. The changes have been tested and verified
to work correctly.

The minor error was a refactoring in instance_planar.cpp which had
a couple of typos.

game_restart was moved from actions.h to roomsystem.h, and the change
was tested and verified to work correctly.

Fixes #224.
Linked actions.h back in
Removes code duplication in instance_(de)?activate_region.

The code is still kind of fat, and in the wrong place, and in need of revision (all operations on deactivated instances are linear in the total count of all instances; the current instance storage mechanism should be an instantiable object; there is no reason not to use a spatial hashing algorithm alongside them). But I'll deal with that later.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	ENIGMAsystem/SHELL/Collision_Systems/BBox3D/functions.cpp