lazier computed properties WIP

Don't bother watching dependencies if you don't have a cached value to invalidate.