update slicing to support dynamic contracts
Currently, slicing might remove variables that are considered useless for the goal alone, even though a dynamic contract uses it.
Variables used in dynamic contracts should be considered useful, if they can be changed by useful actions.
issue