Discovered that the boost::numeric::ublas::matrix::clear() function simply zeros the matrix; it does not free the memory.
Replaced it with something that I hope will work.
New array2d::clear() method was causing compilation errors. Eliminated clear altogether. Must find a better strategy.
Added publication list to README.md