Corrected a typo in the README.
Use argparse rather than optparse.

Also added more comments, and removed the hack to work around a Firedrake bug that was fixed by pull request #355.