moved stored information from private to proceted -- as we'll want access to those fields in search algorithms that inheret from RandomFlood
Stubbed out the flooding hillclimber, as a child of random_flood.
Currently it's just doing random_flood, but add a heuristic
(heuristics?), an openlist, and baby, you've got a stew going.
Now iterates through the frontier looking for the best node according
to the stored heuristic value.  The value isn't being set anywhere; I
need to think about how best to do that.
Heuristics now in flood_hillclimber.  They aren't used, but they are
set when instantiating the algorithm (and can be fed by the command
line).
removed pointer to current state.  The next set of states is now stored in frontier.  This should make it possible for future climbers to select multiple best nodes for diversity, or because we use multiple heuristics that disagree about what is best.
pushing the heuristics up a class -- they need to be called every time a state is generated or a node is opened in order to be correct.  By default, no heuristic will be supplied to random_flood, so it won't take much of a performance hit (an if-check), but things based on its flooding behavior will have appropriate heuristic calls without a shitload of code copying.
random_flood now calls reach_state where appropriate.  Landmark based heuristics can now be accurately computed on the frontier in flood_hillclimbing
flood hillclimber now uses heuristics to determine the best n nodes (1 per heuristic) to do it's hill climbing.
Merge pull request #5 from jordanthayer/master

Heuristics now part of flood + hillclimb