qt: rework history and page loader
This MR:
- changes the page page from a recursive dictionnary to a string list + a dictionnary for page properties
- makes a better separation of concerns between stackviewext and page loader
- factorize page loading code
- simplifies storing page property for restoration when navigating back