First cut at tuple ops.
WIP
Define IsTuple in terms of IsTupleAux instead of vice versa.
Generic cleanups.
Adding operations and tests.
WIP
WIP
WIP
WIP
WIP
WIP