I'm developing a plugin and I wanted to allow users to just subscribe to a custom user level without having a password sent to them via email. this level will not be able to contribute to the site, so just reading capability. I will use this subscription to add the email to a mailing list and to allow the user to buy on this website, nothing else. Do you have any suggestions on how to build this up?
If you're just wanting to add them to a mailing list, you really don't need to create a user account for them. Just use something like this: http://wordpress.org/extend/plugins/mail-list/ or Gravity Forms to capture their email addresses.
The fact that you then say "to allow the user to buy on this website" seems to suggest that the user will need to log in - how will you authenticate them otherwise?