It will help if you provide a clearer definition of "user files". Are these file photos downloaded from the web, taken by the user using the CameraCaptureTask, selected by the user with the PhotoChooserTask, or shipped with your application? There are restrictions to programmatically access the pictures in the hub. As you have found, you can only access a certain folder.
You can always use isolated storage, build a directory structure, allow the user to choose a new directory (you can even allow tje user to pick a name for the new directory) and save the pictures from the chooser there, or. if the file has been downloaded from the web, save it to the newly created directory. Isolated storage allows you to list all directories and all files within all directories. Therefore, when the user wishes to open an item, you can present a list of directories, then a list of files in each directory (on a tap on the directory), tapping an item (a file) from the list will then open it.
Isolated storage can be used in several ways to design and build Windows Phone 7 application. Check out the Isolated Storage section in my list of Windows Phone 7 resources, I am sure you will find some useful posts/articles there.
EDIT: It seems you are looking at downloading media, storing them and playing them on demand. You will need to use WebClient or HttpWebRequest (Beware of cross-thread issues) to download the media and display/store. Here is a nice example by Tim Heuer that will point you to the right direction.
Hope this helps.
indyfromoz