i have looked at the other comments and what i found was lacking was to address the versioning problems with objects--which can be a problem for files, too. there was a very good article on evolving APIs in the eclipse technical articles (2003~ish), but i guess that is not the way to go for an operating system...
(then again, .NET has versioning capabilities, but i guess the "interface" becomes complicated very fast)
Indeed, versionning is very important. The trouble will be the structure. Sure everything's an object, but how will you keep track of differences in images or text documents? You might need something more fine-grained.
(then again, .NET has versioning capabilities, but i guess the "interface" becomes complicated very fast)