Always check if a shipment can be shipped before shipping.

This is needed to handle the case where a shipment is shipped manually or through some other means, and the delayed job tries to ship. In this case, we want the delayed job to stop, not start erroring on the state transition.