Also check out diskless boot client while the client machine boot over the LAN and all data is on the server.
Some custom startup script will be needed to use a single image.
I have setup client machine with nvidia card running nvidia driver with full graphical acceleration like compiz. And since all program is running locally in the client machine, you use the full power of that box. The server box is only acting as a nfs file server. You may still want to put in a small hd in the client machinefor swap file if developer are doing huge compilation. With 2G ram client machine I can compile the linux kernel without swap.