Implement model-level support for multiple subscriptions.

Add a new Subscription model which establishes a many-to-one
relationship with the Customer model, and which stores the Stripe id for
the subscription.

Add data migrations (forwards and backwards) to create Subscription
records from existing  CurrentSubscription records. The backwards
migration can be used to recover the old CurrentSubscription records if
necessary.

Modify various Customer methods (has_active_subscription,
sync_current_subscription, subscribe, cancel_subscription,
update_plan_quantity) to use the Subscription model.

Fix the admin, the test modules, the CustomerManager, views and
templates, to work with the new Customer implementation.

Add a new setting, DJSTRIPE_ALLOW_MULTIPLE_SUBSCRIPTIONS, to control
whether multiple subscriptions are actually permitted. With the default
value of False, there should be no change to pre-existing behaviour.

Remove the CurrentSubscription model, and re-implement
Customer.current_subscription as a property which has meaning only when
multiple subscriptions are disallowed.

Add a new test_subscriptions module to provide test coverage for single
and multiple subscription cases.
Merge branch 'multiple-subscriptions' of https://github.com/ctrengove/dj-stripe into feature/multiple_subscriptions

Conflicts:
	djstripe/models.py
	djstripe/sync.py
Merge pull request #1 from FoundersAS/feature/multiple_subscriptions

Feature/multiple subscriptions