Right now we assume recursive "*": if any watched field changes, it is included.
The RFE is to allow that projection to be configurable, so given a diff of fields, apply a configurable projection to that to get what is written to entityData.
Right now we have "includeProjection" and "watchProjection"... maybe this is a "watchIncludeProjection"?
Maybe "includeProjection" should be renamed "staticIncludeProjection" (both can exist for backwards compatibility).