The Membership 2 plugin allows you to create a sophisticated membership management environment easily.