Allow subclasses of RootResource to provide additional data.

RootResource no longer hard-codes the structure of the resource data.
Subclasses can now override serialize_root() to provide additional data.

In order to allow caching to work correctly with custom data, we now use
a repr() of the data instead of assuming certain contents when
generating the SHA1 for the ETag.
Add setValue function to inline editor widget.

This change adds a utility function to set the value of an inline editor,
regardless of whether the editor is open or not.

Testing Done:
Used this in conjunction with another pending change to add reviewer
suggestions. Opened a review request, clicked on a reviewer suggestion (which
triggers a call to appendToFieldValue, ensured that the suggestion was filled
into the inline editor. Hit OK and ensured that it was saved in the editor. Did
the same with cancel to ensure that it was not remembered.

Reviewed at https://reviews.reviewboard.org/r/5030/