I assume each student picks a device out of a lockable cupboard, connects it to monitor, mouse, keyboard, usbstick and power. And is happy if he does not have to ask the teacher for an SD card with a valid OS.
Personally I would think that in a lab environment a static setup makes a lot more sense. If nothing else, because the connectors aren't really designed to be manipulated 4-6 times a day and remain reliable, you'll be constantly replacing cables and repairing/replacing broken power connectors on the Pis, less chance of accidental damage to the Pi moving it around etc. It also makes it much easier to do mass updates and so on if the machines are always hooked up and ready to go.
If you do want to use it in this environment, ask the students to shut the machines down before putting them away. I don't think this is really a big deal, most people, especially young people, understand the need to do this. I'm not sure why a hardware button is preferable to a software one; you're still going to have to make sure they wait for the shutdown process to complete before removing power, which would seem to me the far more difficult thing to accomplish.
You can not avoid write access to the filesystem unless directories like /var /proc /tmp are mounted into a ramdisk or over the network (Model B as a kind of semi diskless client)
Mount all the system partitions read-only, and temporary files can live on an SD card partition that is wiped at each boot.