Removing stock locations was taking a very long time if a large number of product records exist and multiple stock locations.

dependent: destroy loads each of the records and attempts to destroy it. This is useful if the model has any destroy callbacks, but StockItem model does not. Deleting all the stock items in one fell swoop is therefore a better solution.

Fixes #3504