You'll have to use some sort of database, or a TON of cookies (I'd recommend the DB route
Now, I'll try and point you on your questions...
1) Is there a way that the person can "save" their form info or will they lose it? Either saving it while working on it or after hitting submit?
There could be a way to save all this info, and it'd be to write the info to the database.
2) How would you code so the person can choose from a menu the person or persons they wish the results to go to? This would be instead of hardcoding it in the ASP code or having them enter it into a text box. The goal is that they can send it to mulitple people and they can choose the names of the people from a drop down list.
This will be easy once you have a database of users.
3) Is there a way to allow the user to upload an attacment and then have it submitted with the form results?
Yes there is, this will be the MOST difficult thing to do of the 3
See if you can get yourself started on these things, and if you need some help, feel free to post.