do not feed long indices when sparse code expects int32

This tries to address https://github.com/qutip/qutip/issues/73 using some type conversion and some fused types.  I see a unit test error due to some fortran thing, and a couple of unit test failures, but I don't know if they are related.