Fix code formatting
Fix state_changes to be destroyed when the associated order is destroyed
Refactor Spree::Order#associate_user! code and specs to be simpler

* Expand the specs to test all possible code paths. This code is fully
  mutation covered by mutant.
Change Spree::Order#associate_user to copy address information