Yep, so what you are looking for is player self-hosting. My system currently hosts all of the server instances on a server farm that you create. By using this dedicated server farm you have complete control and you can stop players from cheating. But they have to be online all the time. So what you want to do is have the players host their own instances. This will allow them to play in offline mode against their own local dedicated server which can also be made public over the internet to allow their friends to pop in and out of this server instance. You would still want to store all your character data on a central server (OWS in this case) so that the information is available for players to join any any other server instance. This would allow characters to bring their stats, equipment, character customization, and inventory into any game they join.
You can do this today with OWS for development purposes by running the World Server app on each player’s client. This allows them to host dedicated servers. When you go to publish a game you would want to build this into the game launcher. I have plans to do this, but if I didn’t you would have to move the code (a few lines of C#) into your launcher app. You would also need to use uPnP to open up the ports needed to allow external players to connect (as players are not usually smart enough to enable port forwarding).