Only lookup tax cloud when the order is in a state to do so.

This also allows line items to be added or removed from the cart when
the address is currently invalid (according to tax cloud).
Make test a little clearer.

Create the line item before the spec so it only gets called once as
expected when we call the subject.

Bring in VCR as we need to record the soap request to tax cloud that
occurs.
Fix specs
Expand test to test all ineligible states
Include cart spec.

Ensure line items can be removed and added after the address failure
Merge pull request #1 from Senjai/better_tax_lookup

Only lookup tax cloud when the order is in a state to do so.