Bulk save functionality (setItems method) + other minor fixes

No new tests, existing tests work
I agree with @thgreasi here, changing it back would be better (and fewer lines and easier to follow).