initial data structure for processing watches
new data structure that uses a cache, schema, and serializer to provide a higher-level client data model