You don't have to actually change where your domains are registered, unless you want to. I don't think it's going to seem nearly as hard as you're picturing it.
First, you would sign up with DH. Next, just start adding your domains through the control panel, which will give you a feel of how things work here. No need to rush things--just start with one domain and see how it goes.
See this wiki article for testing your site before you point your domains to DH's name servers. Don't forget to setup any email addresses that you have at the old host.
Once everything is setup here the way you want it, all you need to do is log into your account(s) where the domains are registered and change your name servers to: ns1.dreamhost.com, ns2.dreamhost.com and ns3.dreamhost.com.
Where you're hosted now, or where your names are registered, shouldn't matter unless you have them registered with a host that wants to make leaving hard--but as long as you're listed as the registrant, you should be okay.
If you're unsure about whose name the domain's in, you can look it up at sites like Whois.sc, Network Solutions, etc...
Were you set on using the free domain registration for one that you already have? If not, pick a new domain and play with that to get used to things, then start transferring your others here once you're used to how things are setup here. You can never have too many domains!
Save up to $96 at Dreamhost with the 96DOLLARSOFF promo code.