matrix: initial cleanup (more to follow)
matrix: some more cleanup
matrix: rename the members
matrix: reorder private and public sections
matrix: implement generalized Floyd-Warshall algorithm
float-semiring: add an assertion
semiring: make the destructor virtual
matrix: simplify construction