(In Progress) Problem w/ get_board()

Found a problem with the way the piece_positions dictionary gets rendered in
get_board() such that the same state does not yield the same get_board() string.
Partial changes seem to have made matters worse.
Move-counting and duplicate state visiting

The change to get_board() using the sorted list of piece types seems to have corrected that problem.
Both astar and fringe searches find the 30-move solution to the Block-10, v12.  Need to check climb-12
against Glenn's common-lisp code.
found and fixed can_move problem

Found and fixed a problem with the way can_move was computed, incorrectly allowing pieces to drift off
the right side or bottom of the board based on the piece shape.  Now does the first 20 fringe levels identical
to Glenn's common-lisp version.
trying to reduce get_board()
fix get_board/set_board problem