Separate read and write intent in _force_evaluation

Previously, `_force_evaluation` evaluated all dependent computation.
Add arguments that specify whether the intent is to only force
computation that depends on reads or writes or both.