diagonalization

Results 1 issues of diagonalization

* Converted all uses of arrays to numpy.ndarrays. * Converted all code to Python3. * Clean all code and organized more tests.