Fix .gitmodules, for real this time.

I had this done correctly but while preparing new branches for pull
requests, somehow this got mangled.
add .gitignore for generated files and *~
add setup scripts and Make rules for setup/generation

Previously the build procedure was documented via comments in
gendocset.py.  This CL automates much of the prep & build.  The
automated version now also uses virtualenv and pip, in line with modern
Python dev practices.
Fix sentence fragment in Makefile