Keys remember whether to use deprecated syntax

and the deprecated key handler registers itself with the base key type
LMS-2752
Add more tests for opaque-keys
Reorganize OpaqueKey methods by function
Make _to_string/_from_string and _to_deprecated_string/_from_deprecated_string parallel constructions
Don't measure coverage for abstract base methods that return NotImplemented
Use _to_deprecated_string for serializing deprecated strings
Respond to review comments
Clean up awkward deprecated argument passing
Add tests of Location deprecated son code
Separated out the deprecated and non-deprecated string parsing functions in SSCK
Fail the build if any coverage commands fail
Increase test coverage
Make tests more concise
Merge pull request #6 from edx/sarina/handle-old-new-keys-transparently

Keys remember whether to use deprecated syntax