Create the wallet tree, a red-black-weighted tree

There is a comprehensive test suite which should catch every possible case. I do rely on randomness to achieve this, but I'm pretty sure there aren't any rare cases that the random tests will miss.

I also added `make test-quorum` to the makefile.

The old tree and test suite have been completely obliterated.