The Hello World example would have to be a little game where each level is a different url and it specifies the game engine as the render.
Applications could be one of several different sandboxed solutions with at least a bytecode package and an interpreted solution provided. One possible solution would be to use something similar to vmkit and let applications provide their own vm (and language) that their application can be written in. One could of course write an application called "classic" that could render html :)
Beyond the application graphics primitives would be provided and on top of it anyone would be allowed to create rich toolkits.
Why not just make apps using nacl for Google chrome? You could, but the only way this is interesting or takes off is if it is not in the browser we know and use today and is first on mobile. If it is first on mobile than any new application that appears on it will first and foremost work on mobile, unlike the web today where you have desktop sites, and then mobile sites. If it is not within the existing browser than it has the power of *new*. Users love new things, developers love new things. Developers hate minor features that only work on a subset of the browser market, but here if you make an app you know it will work on 100% of the app browsers out there. Lastly by making something new with no intention of working in the old browser you can determine everything and don't have to compromise. There is a good chance that the first sdk will be the default sdk for a long time. Many companies have been built on the idea of creating a platform and making money as users come to the platform.
Finally at some point someone will make something like this and it will eventually replace the web browser and the app store as we know it. The question is would you like to be in control of it or let someone else?