How to save and restore group of windows (not necessarily on reboot)

That's exactly how I run on a 16 GB machine using a combination of:

  1. Workspaces
  2. CompizConfig Settings Manager's Place windows plug-in which will allow an application that isn't running to open on its particular workspace at its pre-defined X-Y coordinate,
  3. autostarting individual applications
  4. For individual applications opening individual files it depends on the application itself:

    1. Example for gedit
    2. Example for FireFox
    3. etc...
  5. Create multiple users on your machine so they each have their own sessions
  6. Hibernation

The more users and applications, the more RAM usage, though...