Change transpose for 1D matrices to return a clone of the matrix instead...

... of segfault.

I encountered this bug also just on transposes and without any of the dot product stuff in your example.

I chose cloning over raising an exception for consistency with what numpy does.  Note, though, that your testcase now raises an ArgumentError where it complains about incompatible dimensions when the dot product is taken.   (`m.dot(m)` in your example would also fail).  I'll open a separate issue about this.

Fixes #182.