Got some pseudocode for shortest path

Writing A* for shortest path.  Converted most of the pseudocode
already.  Zero testing so far though, that could be annoying to do.
Added diag_dist method to PathPt class.

Approximates diagonal distance to a target.
Fully implemented shortest path, but does it work?

Of course, I haven't switched the actual movement code over to tile
based movement yet, so it's kind of moot at this point.
Added some basic terrain and move costs
Add unit types and fix G calculation.

Needed to account for diagonal distance when computing G.
Cppify terrain with vectors and add ifdef to unit.
More additions without testing.

Try to add color tiles to the map display...should have done this
in another branch without all the shortest path stuff...
And then next step would be to actually move on these tiles...
dumb dumb dumb
Add terrain to makefile and comment out sf/system
Actually comment out helper now.
Fix case of x and y in helper pathpt class
Compilation fixes and functionfying terrain
More compilation fixes, now in shortest path...
Almost compiles, some weird error left.
unit.cpp compiles...
Problems with multiple definitions.

Having 'helper' be everywhere is trouble, as is terrain, even
though terrain is not everywhere.  Very tempting to dump stuff into
one file, but that's not the right idea.

So, terrain includes some actual memory map information.  This
should be part of main.  But the function (prototypes anyway)
should be available to whatever file needs them, then I can define
them as needed...somewhere else I guess.  Just prototype in hpp,
then define in one file, perhaps terrain.cpp, sigh.

Might have similar issues for helper.hpp, though it worked before.
Remove terrain.hpp compile errors.

Turned all the setup functions to take actual memory.  Now main does all the initial allocation of memory, so no need to compile a separate terrain.o file.  Of course, with helper, this could be trouble...
Almost compiles.

undefined reference to 'PathPt...' remain.

Soon, compilation, then, the world!!!
It's...ALIVE!!!!  COmpiled!

DOes it work?  PRobably not.  Excessive caps?  Definitely.
Runs, but not correctly.  Also very slow...
Tile display works!

I still don't actually use these tiles for anything, but it looks cool.