add array operations to do_app_pat
fix do_app_pat: case was missing because of store_v values
tidy and finish definition of pure_op_pat

pull out pure_op as a separate function, defined negatively. this is
less verbose. it means we won't find out about future missing cases via
type checking, but that can wait until the proof.
replace unused variable by underscore in intLang.lem