Simplified substitution and preservation proofs

... by removing lemma arguments that can be computed from the rest, e.g.
using the typing function plus the Some.v "projectors". Unfortunately
I had to move away from Lemma for these lemmas because of bug #57. Can
move back once that is fixed.