I have a website name, however I have not chosen my hosting company yet. I would like to register the name, while I am still researching hosting companies. Can anyone tell me a good place to register my website? I am looking for a company with the following criteria.

No hidden fees.
Pays the registry for the number of years I ordered upfront.
Gives direct unfettered access to my Whois record, registrar locks, auth codes.
I Control over DNS settings, I.e hostname records, mail exchangers, and name servers.
Offers free Whois email privacy service and will never sell data to a third party.
Doesn't monetize domain.
Never front runs prospective domain searchers.
Good customer service (answers the phone).
10 years + experience selling DNS services.

Thank you.