added a link target

git-svn-id: file:///cygdrive/w/cygwin_home/dave/repos/git/puzzler_rsync/trunk@586 2299cb40-9015-0410-805f-d83012bcf56a
replacing algorithm choice c with algorithm choice cxx
introducing algorithm exact_cover_cxx.py
adjusting to differences between exactcover used for exact_cover_c.py and exactcover used for exact_cover_cxx.py
adding code to write md5 checksums for solution matrix for comparing results with those of previous runs.
exactcover -> exactcover_cxx
reformatted some comments to keep lines less than 80 chars long.
reintroducing algorithm c option.
moved md5 deletion outside of puzzle components loop.
introducing 2D and 3D versions of format_md5 routine
adjusting for changes in getSolution() output.
adding lock to SessionState after restoring from file.
fixing a couple of things related to ExactCover.solution: initializing it properly in solve() and syncing in correctly with state.solution.  Also passing solution in to Coverings constructor.
updating python interface to cxx to use getState function for periodic state
moved num_solutions increment just prior to yield self.solution
using getState() all the time when saving state.  Moved num_solutions+=1 to solve from format_solution
cleaned up some badly written python.
checking for None solution before writing state.
adding back solution assignment ( never should have been removed ).
when saving state after solution found, explicitlt passing the solution that was found to the save function