Firstly, are there any libraries/pre-made solutions to this problem that exist already that would be easy enough to just plug-in to my own site?
Yes, tons. But it depends on your target language, and if your target hosting service allows for the use of some specific features (like, well, sending emails).
Also, if you're not using some sort of half-baked online hosting and do this on your own machine (or use online hosting granting you enough privileges), you could offload most of the email processing work to a mailer agent and focus on implement the front-end.
Secondly, if there are no real pre-made solutions, what are the general steps I need to take to accomplish this task?
Read a lot of RFCs on:
- the email address format (way more complex than you'd think),
- the use of email headers (or your emails will end up in other people's spam/junk folders).
Then I don't know what else to recommend. You'll need to create a web-front end, but if I were you'd I'd focus first on getting a pretty basic e-mail sending form working correctly, then try to improve this to support this side of the workflow decently.
Receiving e-mails is going to be a whole other question. You'll need to implement an e-mail spooler yourself.
Might need more details on what you want to answer with more precision.