Fixed how set data is tracked in DynamoDBv2.

Since release, initial setting of ``set`` data works in DDBv2, but can't be updated afterward (see #1565). This commit reworks things so that state should always be managed properly. This should be backward-compatible, but I'd welcome being corrected on that. The added test covers the set behavior & all pre-existing tests are passing.

Review would be appreciated. @danielgtaylor @jamesls @garnaat