The obvious answer to all the questions would be to just create normal software and people can upload/share their files if they want to. That's pretty much how all software works except for SAAS web stuff. I assume you're getting at something different, but it isn't at all clear what it is.
Local/native software has been around for many decades. Long before web software; long before the web itself even existed. What is different about this idea?
Is it some way to make web UIs actually as functional as native applications? Some format to make data from web apps as usable as data from normal applications?