Separate out subscription into a separate model

So we can keep track of historical subscriptions and show people their old details.
Merge pull request #18 from seedpod/subscription-refactor

Separate out subscription into a separate model