Fully Functioning, Lightly Tested

So, this is the PR that pulls all of the pieces together. Auto-repair, deadlines, non-malleable transactions, proof of storage, everything that was on my hit list.

It's mildly tested, and there's at least one thing that's slightly broken which needs to be fixed. But I've tested all of the major features and they appear to work without problems, just minor hiccupps here and there.

This is not production ready, and the client should probably be rehashed. Might be something that we want our newhire to focus on, or maybe I'll spend all weekend reading about APIs and how to design them.

This will be ready for production when:

1. remove some of the panic()'s
2. change the constants to be realistic in a real-world enviroment
3. disable/remove all of the debugging statements littered throughout the code