It's more oriented around your data than your objects. You can create your Item schemas, derived from System.Storage.Item (or further down the tree, like System.Storage.Document), and that will give you a corresponding C# class (with the right derivation) that you can customize. You're not storing objects in WinFS, you're getting an object interface on your schematized data.

The mapping is prescribed by the WinFS API layer (see Mike Deem's PDC stuff) and the data layout in the store uses Yukon's UDT stuff (which are two orthogonal technologies at two different layers of the WinFS technology stack). The API layer is built using technology similar to ObjectSpaces (but not quite the same).

Sound complicated and hard to get right? Yup. But it will be awesome for developers and users.