Cli join

Bring bootstrapping to the cli. To do this yourself, run client-cli, switch to server mode ('h' for help, 's' for server mode), 'n' to create a new quorum, and 'j' to have participants join the quorum.

When you create a new quorum, an inital wallet will be created. You'll supply the ID for this initial wallet (can't be '0'). I usually use '1'. All the other siblings must use this wallet to join the network, because we don't yet have a way to create other wallets (soon!).

Between Luke fixing the race condition (it was actually causing me problems!), and me patching a few misguided decisions, quorum joining seems to work with a moderate-to-high stability (sometimes getting several thousand blocks without failure, but sometimes failing for no apparent reason - I left the debugging statements in to help figure out what's going on when things randomly disconnect from eachother).
`siacrypto.PublicKey{}`?