Help Few noob questions before attempting first root

Hey guys so I got an android phone in December and have been reading a lot about rooting and basically nerding out over all the stuff you can do in Android. So i'm planning on taking the plunge and rooting my DINC2 just had a few questions.

I'm planning on using tacoroot then revolutionary. I want to flash Ice Cream Sandwich onto the phone. I see a lot of ROM's, is there any one that you guys would say is the best to use/doesn't lose a lot of features?

Also, I see lots of things require a data wipe, does that erase contacts/pictures/etc and is there a way to back that info up(i have a lot of contacts from work I don't want to lose)?

And on that note is there a way to do a complete backup for the phone before attempting all this? So I can just go back to stock if something messes up?

Thanks in advance guys. Pretty stoked on learning some more about the android platform, gonna be doing a Nexus 7 in my dash in the next couple months to replace my radio, will post pics and a write up when that happens.