Customizing JSON parser and stringifier

I have always wanted JSON.parse and JSON.stringify to deal with custom objects, such as Date and Set.

BTW, I have successfully done so in two languages, Python and JavaScript (TypeScript).