I'm working on a GXT Desktop app. I'd like to have the whole thing be stateful. Has anyone done this already? Anything I should be aware of before I start?

The only potential issue that comes to mind is the fact that every component that is going to be stateful must have a unique state ID. This has to be considered when you have things like multiple instances of the same window, for example.