PEP 837: Extensible JSON serialization

This PEP adds an extension mechanism to the json encoder consisting of three complementary parts, one per level of customization: