Edge fix readonly inventory units

Two commits with different fixes but both related to the same action *update stock items quantity with existing backorders* described in #3066. This should fix that issue however it creates another one, after a purchase the stock items quantity is not updated properly, probably because I removed the after_save callback from StockItem.

I intend to look into that tomorrow and hopefull should push one more commit to this PR. Another issue is core test suite is still green. I could only notice that issue because I manually did some purchases and watched the results.

Please read the commits messages for details on both changes and let mw know if I'm missing anything.