Batch Commits
There should be a way to change multiple subjects in one commit to guarantee data integrity.
There could either be a new BatchCommit class or a new property on Commit that contains multiple actions , with an action being a nested resource of subject + action (destroy, remove, set, push).
I'd be in favor of adapting Commit to not introduce multiple concepts.
I'd also suggest deprecating having a plain subect + action directly in the commit, but have all commits use actions instead.