Membership Subscription Widget

Is there a widget that allows visitors to enter their email address to join a membership level?

Here's what I figure happens.

1) Visitor enters email address the same way as with the "subscribe by email" plugin and widget
2) Visitor becomes subscriber (but doesn't get the auto content updates) and is placed into a particular membership level
3) Subscriber receives login url, username (the email), and an auto-generated password via email