Subscription Management Complete

Refactored (re)subscription management and tidied code up.