create test for simultaneously adding siblings
convert Active to Status in struct Sibling
Fix all broken tests
change mutexes to channels for consensus test
Separate wallet keys from sibling keys

Wallet keys are now completely independent from sibling keys during
bootstraping, something that enables the client to create a generic
wallet that doesn't expose the private key of the sibling. It's
important to keep them separate for anonymity reasons.

This commit is partially hacked together, and a restructuring of the
bootstrapping procedure is probably needed. Luckily, this should mostly
entail changing variable names and moving functions to different files,
with just a bit of code restructuring thrown in. Nothing as nasty as
we've done in the past.
homogenize errors in client-cli
Set and enforce naming conventions
provide cli support for joining - there are errors
Merge pull request #193 from DavidVorick/join

Add Full Quorum Tests
pariticipants can now join, but when the third one joins they all kick eachother.
fixed snapshot failure issue
Merge pull request #194 from lukechampine/reorg

Remove global script execution environment
fix multi-join, debugging statments not removed
merge Luke's changes
add a minimal framework for creating wallets.
rename BootstrapWalletID to FountainWalletID
change PK and SK to PublicKey and SecretKey
untested infrastructure for requesting a wallet
restore functionality for requesting wallets from the fountain wallet.
I think it works for real now