towards dimer calculations with non-neutral charge and non-singlet spin
loop over target bits in apply rather than source bits
adding possibility to apply in a distributed like manner
Gamma calculation should check to see if it is the last active branch in a direction and avoid doing redundant work if it is.
N-1 intermediates unnecessary for RAS
being a little more aggressive on the localization parallelization
replacing a matrix multiply with extra rotations. might be able to speed up rotations too.
saving some work in Gamma trees if there are no more alpha operators further up the tree
Merge branch 'master' into ASD
shrink chunck_ size if not enough tasks in TaskQueue (this may end up pointless, just testing it locally)
trying to parallelize jacobi rotations a little more. this seems better than the old method, but slower than just computing the 2x2 matrices one by one. I'll keep testing.
parallelizing here seems to make things worse.
threading rotations gives me a pretty decent speed up! localization is no longer a significant step. now to give gamma formation some extra attention.
Revert "shrink chunck_ size if not enough tasks in TaskQueue (this may end up pointless, just testing it locally)"

This reverts commit 6a4dd6e8a7b72186a640a91a3a5970d2ae6d6c6f.
loosening test thresholds to make the test suite run a little faster
minor. doesn't seem to change timings at all
generalizing the initial guess so it will work with subspaces
outline of modelize() is there, but the diagonalization of the blocks is missing and pruning isn't really included yet.
initialization works, now on to diagonalizing subblocks
generalizing apply_hamiltonian a bit