* add test case.
* add double and complex64 implementations.
Also add logic to all linalg methods to both coerce arguments to arrays, and to promote to an inexact (float or complex) type if the argument is not inexact.
Make Cholesky and TriangularSolve work for complex numbers on CPU. The HLO implementations are broken for complex numbers on GPU/TPU, so no tests enabled for these yet.
Implement np.linalg.det, and scipy.linalg.{lu,lu_factor,det}.
Add missing abstractification to loop arguments.
Implement XLA abstractification rules for AbstractTuple, ConcreteArray, and ShapedArray.