this code contains a tiny, but devistating, error. In Row.__lt__, the code never uses information from
the other row so the lsit coems back in almost the same order as it started in.
For the fixed system see https://github.com/txt/sin21/blob/main/docs/hw5.md