Determinant bug (det) fix

Hi,

I had weird errors using the det function. Sometimes it changed the original matrix to the identiy matrix of the same dimensions and sometimes I got method not found errors for the eye-function.

I now fixed the bug by cloning the input array and prefixing the eye-function with 'math'. I also added a few more tests to improve to code coverage and also account for this case.

Additionally I enforced the input to be Array or Matrix since the determinant only makes sense for this data types (which was also specified in the docstring). 

Best,
Finn