Secondly, what this is really talking about is separating the execution and hosting environment (the client) from the software and content delivery environment (the server). In other words, the OS will still be there executing software (hopefully based on standards), but it will be delivered the presentation and behaviour 'software' dynamically as needed by the server on demand and most likely cache it until the server tells it there is a newer version available (hey, that sounds familiar... updates anyone?). It will then interact with the server for data content. This is how the browser works now.. it caches images and stylsheets and js files... even pages sometimes.. and importantly, it all executes locally... so what's so hard to believe about this being extended to all applications, if that model isn't already there conceptually anyway ?
So, the future is not necessarily going to be a browser that does hardware interaction and removes the need for an OS, but it is likely that the OS will become merely a shell for hosting an environment that interacts with internet based services/ASP's - so you could kinda think of that as a browser ;-) This is the best of both worlds - the centralisation of your 'stuff' and 'run anywhere' type availability whilst performance and hw interaction capabilities of local apps. It may seem like this is a hybrid, but actually it is the browser model just extended a little to improve local machine access (of course.. this opens up the biggest can of worms.. security!)