Rough progress on defining iterator classes for internal CostMatix class
Implemented a design that compiles, not sure it is a great design, though. Standby
Thought of a much better design for cost matrix and started very initial implementation
Basically have the interface for CostMatrix, CostVector, CostRow, CostColumn, CostMatrixInteger implemented, removed it from TreeNode translation unit
Slow but steady progress toward building
Progress toward building cost matrix, fixed lots of small errors tonight
Switched the iterators to using pointers instead of references to allow default construction, added default constructor for CostMatrixInteger as well. Everything builds
Switched to CMake, removed Makefiles, changed to out of source builds, added a bunch of new ignores due to CMake autogenerated files
Added ability to build unit tests with gtest
Changed unit tests to be siblings of the modules they are testing, added subdirectory organization to source files
Changed building of debug objects to be "object library" so they only need to be compiled once for debug executable and unit tests. Bumped cmake required version accordingly
Tested CostMatrixInteger
Changed to building Google Test with Google Mock
Tested CostMatrix, added appropriate mocks for CostMatrix
Added tests for TreeNode, still have debugging work to do. Found and fixed a bug in CostMatrix, moved Edge to its own translation unit
Started fixing bugs in TreeNode, caught more in CostMatrix, added tests for them, and fixed them
All the unit tests currently written pass! Joy to all!
Better algorithmic complexity, more STL, and code cleanup
Added test for a corner case, in the process of fixing it
Finished testing TreeNode, refactored CostMatrix not to store unavailable rows and columns