Use OkJson directly rather than through MultiJson

MultiJson contains a lot of code that we never use, because we patched it to always use the OkJson backend. However, OkJson is a lightweight, single-file implementation that is designed to be vendored, so we may as well do so directly and get rid of the MultiJson cruft.

This also introduces a `Utils::JSON` facade to make it possible to adjust the implementation in the future without auditing all callsites.