simplify parse0 and parse1 code to use standard type classes more; work on refactoring article
reorder parse1; replace oparen with openparen, etc. -- no sense in saving a few characters if it makes the name hard to understand
more examples for parse1 writeup, fix up code, tidy up explanation
don't use monadic operators where applicative ones suffice
clean up parse2: improve variable names and definition order
remove Plus type class from parse2 -- Alternative will do just fine.  it was the ErrorT instances, and some of the Either instances, that needed to be avoided