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