Stanford updates to certificates repo

Most of this came out of Stanford's need to support the rolling
certification case.  Changes are for performance, robustness, code
quality and aesthetics of output. Everything here should be 100%
backwards compatible with the previously existing edx ceritificate
infrastructure.

* Features
 - optionally accept grades, designations, and certification date via
   xqueue from -platform
 - support course date ROLLING to stamp the current date onto the
   certificate in a generally accepted format
 - New font_for_string utility method allows dynamic selection of the
   best font for any arbitrary unicode string (i.e., names)
 - arbitrary text interpolation for 'with distinction', etc.
 - many more defaults can now be specified via env.json
 - verification and validation page generations are now optional on a
   global and per-course basis

* Performance
 - pre-cache all the fonts
 - pre-cache all the blank pages
 - re-use CertificateGen objects when two successive requests come for
   the same course id

* Aesthetics
 - alphabetization of imports
 - less noisy running under normal conditions
 - improved error reporting providing more context
 - shifted assumptions in valid and verify towards the open source
   community
Pep8 cleanups

* Complete cleanup of arabic_reshaper.py (mostly whitespace fixes)
* Mostly trimming trailing whitespace elsewhere, but also line length
  adjustments and similar small janitorial tasks
Creating AUTHORS so I can add myself to it
Fixing Travis tests

* Tidy up comment for clearer error reports
* Add Arial Unicode to repo so Demo cert can render
* Restore default GPG key ID to settings for signing tests
Merge pull request #10 from jrbl/stanford-rolling-certificates-support

Stanford rolling certificates support
Remove 188 Letterhead generation

* This is a very particular, peculiar use case that doesn't fit into any
  of the rest of the certificates workflow (and indeed doesn't seem to
  use any of it), so kill it.
Demo course_id changed

* Updates the course_id for the certificates demo course to match edx-platform demo course
Merge pull request #9 from fmyzjs/patch-1

Demo course_id changed
Merge pull request #11 from jrbl/jrbl/removing_188

Remove 188 Letterhead generation
Switch from python-gnupg to gnupg, update calls

* "gnupg" is a fork of python-gnupg which seems more actively maintained and
  more responsive to bug reports than python-gnupg
* Updates to the latest version of gnupg and updates gnupg calls to
  preserve semantics where the API changed
Fix nose tests to work with updated gnupg API
Settings tweaks to get certs to run on Mac OS X
Merge pull request #15 from caesar2164/giulio/settings-fixes

Settings tweaks to get certs to run on Mac OS X
Add stv to AUTHORS
Merge pull request #18 from stvstnfrd/author

Add stv to AUTHORS
Merge pull request #13 from edx/jrbl/bugfix_gpg

Switch from python-gnupg to gnupg, update calls
Update requirements to use more modern stuff

* bump reportlab from 2.6 to 3.1.8, a painless drop-in upgrade
* bump requests from 0.14.1 to 2.3.0, making it match the version in use
  on edx-platform. Some small code updates to make this work.
* bump PyPDF2 from 1.19 to 1.23, a transparent upgrade
* remove logging-config dependency, it appeared unused
* remove lockfile dependency, it appeared unused
* remove python-daemon dependency, it appeared unused
* remove simples3 dependency, it appeared unused
* remove wsgiref dependency, it appeared unused
Create DEFAULT_ORG configuration variable

* Introduce DEFAULT_ORG variable, so that LONG_ORG configuration no
  longer fails with poorly configured test courses. This also saves
  sites whose certs all issue from one org from having to configure the
  org in every cert.
* Trivial import cleanups
Merge pull request #14 from edx/jrbl/dependency_bumps

Update requirements to use more modern stuff
Adding Roadmap / TODO in README.md

* Putting plans into shared artifacts helps people get on the same page
* Also some small formatting fixups