This is an epic which evolved from
MESOS-2353. As mentioned in the description of MESOS-2353, most of the work is spent performing memory allocation/deallocation. Some preliminary efforts have been made such as calling reserve for JSON::Array. There are still plenty of dynamic allocations being made especially from instances of JSON::Object which hold a std::map as a member.
The current approach being adopted is to introduce a jsonify function which by-passes these unnecessary dynamic allocations and copying, and to simply hold references to the underlying objects.
We plan to first introduce the jsonify function to stout, and update master's state endpoint, then proceed to update the rest of the system.