Refactor: renamed `expired?` to `past_due?`.

`expired?` suggests the account has been cancelled, but we have an
indefinite grace period before that happens. `past_due?` is more
accurate.
Don't override explicitly set subscription attrs.

I.e., only override nil values.

This has no effect on real-world provisional subscriptions (which are
blank when they reach this point), but makes it easier to build
factories that explicitly set attributes on provisional subscriptions.
Test fix: Freeze Salesforce test in time.

The VCR cassette remembered a next billing date of June 25, so we
must always run the test on June 24.
Display org status on Manage Organizations page.

* `OrganizationStatus` is its own class, to keep the complexity
  out of `Organization`, and so that we can add more functionality
  later.
* The `:paid` organization factory trait re-sets `active` after
  saving the subscription, to override whatever the subscription
  may do.

https://www.pivotaltracker.com/story/show/71344322
Clarified "Approve" button.

"Approve" is for new organizations. A disabled organization gets the
"Enable" button, which has the same implementation but different
connotations.
AuthorizeNetSubscription: Refactored duplicate code.

Also Rubified some Javaesque code in `DiscountCode`.
Simplified provisional subscription email address.

We want it to be nil, but we used to have to set it to get past
Authorize.Net, or validation, or something. Now there's no validation
(at least on `ProvisionalSubscription`), so we can just make it nil in
the first place.

https://www.pivotaltracker.com/story/show/73218336
More detailed account status on billing page.

Also, show account status even if there's no active subscription.

https://www.pivotaltracker.com/story/show/71344322
Added "please check" message to billing form.

https://www.pivotaltracker.com/story/show/73218336
Highlight inactive subscriptions.

These are the ones that used to be "Needs Approval." I highlighted "new"
a lot because it needs attention; "cancelled" and "disabled" are
de-emphasized, which does make them stand out but doesn't demand the
eye.

https://www.pivotaltracker.com/story/show/71344322
Updated be-careful message on billing form.

https://www.pivotaltracker.com/story/show/73218336
Show "please check" message only when updating billing.

For a new subscription with a blank form, the message is somewhat
condescending; of course they're going to try to get it correct.
The purpose of this message is to ask them to pay attention when
we're pre-filling the form with info that may be out of date.

We check `Organization.subscription` rather than
`@subscription.persisted` because under the hood, we may be editing a
new subscription object with info copied from the old one.

https://www.pivotaltracker.com/story/show/73218336
Explain that payment date is out of our control.

https://www.pivotaltracker.com/story/show/71344926