avoid invalidaing the cache unless necessary

Most classes that extend `DomainViewMixin` are fine with a cached copy of the domain object. I think I've got all the places where `strict` is needed by hard to be 100% sure.

Originally this was made strict for publishing to the exchange: https://github.com/dimagi/commcare-hq/commit/5bbe915a0b71735463a0775b16a0941f565006de#diff-21bd1c0e52720275d9cf19e3dd556434R72
can't move this in here. will be undefined if `strict` evaluates to true, and it's needed below.