Still trying to figure out `exprlist_remove`

Committing now ahead of substantial changes in case new changes don't
work as intended.
fixed `exprlist_remove`, minor re-org, initial implementation of `for` cleanup