fixed issues in gate_expand_2toN and gate_expand_3toN
added unit tests for some gates and for gate expansion from 1,2,3 qubit spaces to N qubit spaces
Allow dims elements to be np.int in addition to in (happens when Qobj.permute is called)
fix bug in Qobj.norm() for kets with only zero (happens when (psi1 - psi2).norm() if psi1 == psi2)