I wouldn't mess with the reseller stuff for a single domain name. Here's what you should do:
- Create an account with a friendly registrar such as GoDaddy.
- Ask the old host to unlock the domain and provide you with the transfer authorization code.
- Ask them to set the e-mail address on the administrative WHOIS contact to your e-mail address.
- Initiate a domain transfer from your GoDaddy account. There will be a small fee for this, but it also renews the domain for another year.
- You will receive an e-mail with some instructions and verification information. Follow those instructions.
- The old host will get an e-mail from their registrar regarding the transfer and may have to approve it on their end.
- Once approved on each side, the domain will move into your GoDaddy account and you can manage it directly.
I mention GoDaddy here because they have free toll-free technical support that can help you through every step of the process. You can choose any other registrar though. I use DirectNIC personally, but they are oriented toward a more technical audience.
While you're waiting for the transfer to complete, go have a look at my related blog post, The Importance of Domains which has some other useful information that may save you some headaches.
As for your new hosting company, you can certainly delegate access to the domain if you trust them, but I generally recommend against having them manage the registration unless 1) you really trust them and 2) you really don't have any idea what you're doing (and that's not necessarily a bad thing; some people just don't know much about this stuff and its fine to delegate management in some cases).