Hi David,
If I were doing it (and I will eventually unless you do it well and want to contribute it) I would go with the second approach and build a newsletter signup module that can plug into the page. The current newsletter relies on there being a user connected to implement the required opt out links to comply with the CANSPAM laws. The user can opt out without signing in but must sign in to change their preferences or change which newsletters they subscribe to. Users can use the password recovery if needed to get.
Internally it would first check if there is an existing user with the email and if so opt him in, otherwise we have a method in SiteUtils to create a minimal user. I use it in the store to support checkout without registration or sign in for non-download products. I create a user because orders need to be attached to a user and the user even if he did not register may recover his password and then can get to his purchase history by signing in.
Its a little more of a problem for an email sign up though to avoid automated bots creating a bunch of spam users, you would really need a captcha on the sign up form. The store scenario is a little less problem because no automated bot is going to actually spend money in the store.
We don't currently have separate fields for first and last name but I actualy plan to add those for other reasons.
Best,
Joe