I would not recommend pricing the complete job. What we typically do is provide our hourly rates and offer and estimate to complete the based on the scope. If the scope creeps (and it often does), you can revise the estimate. I find that clients are usually fine with additional fees when you let them know ahead of time that you are going to exceed budget and why. This is one area where you cannot skimp on the communication and contractual documents. What you don't want to do is even come close to exceeding budget without prior communication with the client.