Create json encoder class to handle OpaqueKeys
with special handling of Locations and SlashSpecifiedCourseKeys