Various refactorings and cleanups
* Remove BlockTrace and bake everything into ChainTrace * Simplify ChainTrace. Its signature is now ChainTrace : Environment -> list Action -> Prop. These changes will make it easier to reason over traces when proving properties about contracts. For one, we can now talk about prefixes of the entire chain without the weird distinction between block traces and chain traces.