Hey Mark,
We recently went from 7.9 - 10.0 (community edition). I am not going to lie without the documentation this was very difficult. As we did not really have a clue where to start we quite literally went from the ground up - here is how we did it:
Essentially all of the logic inside the hst:configuation was very nearly unchanged apart from some tweaks to take advantage of the better ways of utilising prototypepages. This allowed us to setup a fresh empty project running Hippo10 and then do an xml import across from the console.
We then moved in all the Java classes, beans and params info to the corresponding location in the project src. Following that the same process for the ftl, css and js. As nearly all of the hst:configuration was unchanged this meant most of the content folder in the console was unchanged so we also xml exported this across too.
Depending on your environment setup you need to be careful with the name of the deployable .war you output as this changed for us when we upgraded causing our test environment not being able to find anything to run.
TLDR; it was a huge pain but the only we we could see how to do it was to basically move over all of our content specifics into a fresh project.
Ali