Following on... So, when I buy the domain with the clients details, should I enter my email address, so that I get the nameservers, and when the website is finished change the contact email to the clients address? Im not sure how this works. Can anyone shed some light on this?
The Registrant is the "owner" of the domain. You should use your clients details for this (and in fact for all contact details).
Provided you have access to the domain registration account you can change anything at any time. Presumably you need this access to change the dns servers to your own hosting servers. After you have done that I would then recommend to your client he changes his domain registration password.