Ok, this is just my personal opinion so keep that in mind.
I would recommend minimum two DC's to provide yourself with redundancy. I would not run any other services on these except for perhaps DHCP, DNS and things like that.
I would go with a separate standalone server for each and every database since those tend to be rather resource intensive.
You might want to look at combining RRAS and Terminal Services on a single server depending on number of remote and TS users.
Instead of using PC's or servers as print servers, I would get print server boxes that are small and portable like an HP JetDirect box.
You can migrate 2000 to 2003. I can't say about 2008 since I have yet to do any reading up on it. I would suspect you could upgrade 2003 to 2008 but you'd have to do your own research on whether or not you could migrate 2000 to 2008.
Personally, and again keep in mind this is just my opinion, I would never rush into any new operating system of MS's. Look at the present issues with Vista. Look at the issues with XP...which were the same issues we now have with Vista. If I recall, 2003 was also released a little on the early side and too suffered from lack of drivers for hardware and had other issues as well.
When it comes to MS operating systems, I tend to wait until they've been out a year or two and at a minimum, Service Pack 1 has been released.