Add support for client-side caching of Review Board webapi resources.

Review Request #2433 — Created June 25, 2011 and submitted

Information

Review Board

Reviewers

Add support for client-side caching of Review Board webapi resources.

This updates several of our main resources to support browser-side caching,
using ETags and Last Modified timestamps. It also adds unit tests for
many of them. This should speed up access from clients, and could be
particularly handy for the upcoming RBTools API work.

Not all resources are updated. Some don't make a lot of sense, and I wanted
to give them further thought (likely in another release) before messing with
them.
Unit tests all pass. Hand-tested some resources.