Avoid duplicate loads on creating item adjustments

This reduces a source of duplicate records loads that can lead do deadlocks and identity problems.

We oversaw this one on the deduploads optimization branch.

After merging I'm gonna squash this commit into the deduploads one on the next rebase.
@mbj yeah, the code seems to make the assumption that the `:order` key is defined. If someone used this method without passing in anything, they'd run into an error, so I think changing the method signature to `def perform(payload)` is the correct approach. I suspect mutant would force you to do this anyway.