It should do things differently if going from one stripe plan to another. In that case:
- it should just update the current subscription with a new plan name and then Stripe will automatically prorate and cancel the old plan.
- it should immediately remove the plan from the user's list rather than keeping it there until the end of the billing period
This will require some changes in aldeed:plans base pkg. A set, when coming from a current Stripe plan, should call a different function in the Stripe pkg, maybe changePlan. Could also add AppPlans.swap for the case where user can have multiple plans at once.