There are many reasons why it's necessary, but the biggest one is to get files into apps.
The only way right now to get epubs into an epub reader is to use a ridiculous workaround with Skydrive or other cloud storage services. You can't put files onto the protected storage area (which again, doesn't let you touch any system files) and read them from there. That means if you want to import ROMs into an emulator, or video files into a third-party video player or anything of that sort, you need to use the internet as a go-between.
Touching on this as well is that every developer needs to then write Skydrive integration into their own app. Windows Phone 8 does not use the "Contracts" model that Windows 8 uses, so the developer cannot just say "open a file picker and give Skydrive as a choice". Instead, it has to manually be coded into each app. That also means that the end-user has to manually give permission for each app to access Skydrive, meaning that you could be logging into your account hundreds of times just to log in with each app.
On top of that is the very basic need that many users (especially people who use their phone for business) have in which they need to email files that are not photos. Yes, you can currently go into the Office hub and use that to email a Word, Powerpoint, or Excel file no matter where you received it from. However, PDFs only show in the Office hub if you attach to a computer to put them onto the device. (Any PDF email attachments and PDFs downloaded from the internet do not show in the Office hub). So the only PDFs you can email require you to connect to a PC first.
A second part of that is that sometimes a user will want to attach multiple documents to a single email. Not possible with the current 'attach from a hub' model. Or sometimes a user will want to reply to a pre-existing email with a file attachment. Again, not possible with the current model.
People keep saying that a file explorer and file picker add complexity and security risk, and that's nonsense. Nobody is asking for access to every file on the phone. Obviously the OS files won't be viewable, and the installed apps' files (contents of xaps) won't be viewable. But there's already the protected storage that shows up when you connect your phone to the PC, and that should be a pool of storage that all apps can use, and that you can browse from your device. On top of that, they really should add in the contracts model so that every app developer gets Skydrive access 'for free' without any additional coding. A system-wide model makes much more sense, but more importantly, the current model prevents users from using their phone how they choose to.
Unfortunately, it's just more of the same basic functionality that Microsoft is far behind in on Windows Phone. But hey, so glad to have that Rooms feature, to communicate with all zero people I know using Windows Phones. :wink: