A late reply to this (but I stumbled upon your question whilst searching for something else).
I’d second Rob’s advice, but would expand upon it slightly in two ways:
1. Once you have the ‘master’ copy of the site set up just how you want it—i.e. in its virgin, ‘rollout’ state—export a copy of the database (I use Sequel Pro on the Mac for this) to a single gzipped file and store that file together with your site files. When you come to create a new database for a particular site rollout, you will have everything ready to import into the new, empty db.
2. Set up your ‘master’ copy of the site using Focus Lab’s MasterConfig system. The first time you do it it needs a little bit of work, but it means that you can set pretty much every configuration option available in the CP from one central file rather than having to go to 12+ screens throughout the CP. And once you’ve done it once you can reuse those configuration files on other projects, just by tweaking a couple of project-specific settings, so you don’t have to go through it every time. Brilliantly DRY. (Bear in mind that settings made in the config file are no longer changeable from the CP, but it’s a great way to lock down settings that you don’t want your users to mess with).
The main benefit of the MasterConfig system is that your server paths and URL paths update automatically when you move the site to a new server. That’s REALLY helpful, otherwise you would have to go through numerous, not-always-obvious locations in the CP updating the server and URL paths to avoid things breaking.
Now, you could do that by simply having a standard boilerplate config.php file that you copy into your system folder, as per Matt Weinberg’s method (which MasterConfig is partly derived from). You’d still have to update your database.php file for different servers, though. However, the second huge benefit of using MasterConfig is that you can define multiple environments (eg. local server, staging server, production server) and your EE installation will apply the correct database connection details for each environment automatically. You can also set environment-specific configuration overrides that will trump your central configuration. So I have quite secure settings set centrally, but those security settings are overridden/relaxed in my ‘local’ environment, to make development easier.
All that adds up to maximum portability, which is exactly what you want in a ‘master’ copy of a site that you want to replicate in multiple locations.