Remove IsPureExpression

The existing pass doesn't have enough information to accurately
determine if an expression is pure without being extremely pessimistic.
Remove it until we have better analysis.
Remove SchemeType

This isn't used anywhere in the compiler. If it needs to be resurrected
it will likely need to be generated from boxedTypes.json and linked with
codegen.BoxedType