Removed dependency on scipy for svd, instead using numpy.linalg.svd implementation.