Validate line item's stock availabilty on complete! rather than all the time

Tests need to be fixed, just want to get this out in the wild to make sure this is the approach we want.