Change touching many files: hash codes improved/changed to unsigned int.

Issues remaining: search "TODO HASH".  Some tests failing, I think due
to changed order of display.  A test file for new hash codes
is yet to be committed.

Also changed: engine objects in hash.hpp.  Hash codes are now only
computed when asked for.
Merge branch 'linalg' of github.com:mikestillman/M2 into linalg