For instance, gedit doesn't "remember" the documents that were opened,
Horrors!!!! That would be totally unacceptable for Geany, so of course a "session" is more complex than just window size and position and includes all those files that are open, individual settings for each file (filetype, cursor position, etc). And then projects act like sessions too, adding to the complexity of what needs to be saved when.