Well, I got the netbooting thing working pretty well. In the end
it was a 128MB box because I have no idea what NIC the 16MB boxes
have.

The startup sequence goes something like this:

GRUB boot up (as below)

/sbin/init is a shell script

Connects an NBD (see linux-src/Documentation/nbd.txt),
mke2fs's it and mounts as /tmp

mounts proc and so on

Prompts for a username and smbmounts their home directory
(symlinking /tmp/home to it)

Starts X and Mozilla

Which, all in all, is pretty sweet. I need allow anonymous
logins and error check some more stuff in that script. I also need
to setup home dirs with good Mozilla defaults (proxys setup etc).
But nearly there.