Fix Book.py to work with Python 2.6

This involves minor changes in re, and inserting a workaround using
optparse if argparse is unavailable.
Handle \texorpdfstring in labels
Merge pull request #349 from JasonGross/etc-book-py-26

Fix Book.py to work with Python 2.6