Updated modularity and caching in the cloud facet. 

At some point in the past, modularity of list facet was improved, and caching was
added, but the cloud facet did not go through the same process.  Since
cloud facet code is almost identical to list facet, it was easy to
carry over the changes.  Longer term, the common code between list and
cloud facets should be merged.