## Summary / How this PR fixes the problem?
Don't trigger unnecessary undos on some ops.
Shifting items (z-order) don't trigger undo stack adds in no-ops
Added undo to aligning items, and added code to make sure they
also don't add undo stacks in no-ops.
## Steps to Test
Shift top-most item multiple times and make sure undos work correctly.
Run align-items multiple times and check that undo works correctly
## This PR fixes/implements the following **bugs/features**:
- Fixes #705