Removing Doxygen DLLs and executables from the source tree.
Removing some old unneeded code.

No need to reinvent linked list-based stacks when the STL stack does such a good job.
Moved some to-do items into the GitHub issue tracker. The removal of this file is being tracked by issue #14.
Quick header cleanup.
Didn't do a full rebuild in a prior commit, and got the punishment I deserved. Fixed build break with this commit.
Reintroducing the second NPC script.
Fixed bug where EDEn segfaults on quit.
Fixed copyright headers on files

The copyright headers were treated as proper documentation by Doxygen
since they started with /**. The result was significantly ugly and
incomplete  documentation.

Changed all these to /* so that they will not show up in Doxygen.
Changed NPC movement so that the NPC instance is aware of the path and destination, instead of just the next step.

This commit will make it easier to approach the problem of dynamic pathfinding, when obstacles obstruct the best path while the NPC is moving.
Pathfinding debug tool and bug fix

Fixed the NPC pathfinding to find a path only right before an NPC is
about to move (since move orders can be queued up and may all share the
same source tile otherwise).

Added a debugging mechanism: the ability to draw NPC tasks. In this
case, MoveTasks now draw a red line indicating the remaining path that
the NPC will traverse. This will make pathfinding glitches easier to
capture in the future.
A* pathfinding (!), plus new debug tool and updated Pathfinder API

Finally! NPCs can now find paths using A* search, which takes into
account dynamically added obstacles and moving entities such as the
player or other NPCs.

Collision detection still doesn't exist, and will be part of the next
commit. But the groundwork is in place to add that in correctly, and
the Pathfinder functions have been updated to more clearly express how
entities should call it to check for collisions.

Also added a new debug macro that makes the currently loaded Map draw
the Pathfinder's collision map, to more easily debug pathfinding and
collision detection issues.

Augmented Point2D to have get*AdjacentPoints() functions, which allow
for an easy way to get a tile's neighbors without rewriting the same
eight if-statements over and over again. I expect that it will be
useful in a few places in the Tile Engine component.

Next up is collision detection, as well as some review and cleanup of
the Pathfinder class, which has become somewhat complex and
algorithms-heavy and still lacks correct header documentation.
Cleanup and refactoring of Pathfinder and NPC classes

Broke up the NPC tasks into multiple files, and renamed NPCTask to
Order to eliminate ambiguity between a Scheduler Task and an NPC Task.

Cleaned up Pathfinder.h with some renaming and a heavy dose of
much-needed documentation.
First draft of NPC collision detection

NPCs now attempt to acquire tiles before stepping on them, thus
allowing the Pathfinder class to signal potential obstructions.
Fixes to pathfinding, NPCs always occupy space

The NPC Move order uses incorrect locations to signal movement ending
when a chain of paths are followed. This caused NPCs to leave a trail
of false obstructions that would permanently block movement for other
entities for no reason.

The Tile Engine did not check whether or not NPCs can stand in certain
locations before spawning them. At this point, NPCs do not spawn at all
if they cannot occupy their assigned space (if they are spawned into a
wall or on top of another NPC, for instance). NPCs now always occupy
space from the beginning of their lifetime until the end.

At this point, dynamic pathfinding works well! :D
Some code cleanup is required in NPC_MoveOrder though, and Pathfinder
needs to be moved up to the TileEngine level as mentioned in the last
commit.
Invert Map->Pathfinder ownership to Pathfinder->Map

TileEngine now holds a Pathfinder instance that holds a reference to a
Map resource, instead of the Map owning a Pathfinder and keeping its
state beyond the duration of the TileEngine.

Now, when the game is restarted, the collision map doesn't have old
entities from previous Tile Engine runs.

1) Making TileEngine use Pathfinder instead of Map, and  adding helper
functions to Pathfinder to prevent TileEngine code from needing to know
too much about Pathfinder's inner data.

2) Made NPC and NPC::MoveOrder take a Pathfinder instead of a Map.

3) Made Map more of a const, stateless class (though the step function
needs to still be removed).

At this point, the Pathfinder class is a bit big and should be broken
apart. However, the new functionality works, so I'm fine with calling
the pathfinding branch a success and integrating it in.
Merge branch 'npc-movement'
Added wandering NPCs, added Pathfinder debug flag

Made the entire map flat land with no obstacles, and then created 9
NPCs to wander around aimlessly and bump into each other to test the
pathfinding mechanisms.

Also fixed the 'random' function that EDEn exposes to Lua.
Fixing use of non-standard C++.
Removed unnecessary scratch file.
Fixing build break in Visual Studio (another bit of code that g++ allowed but MSVC didn't).