remove the "Shared" folder

~~This is the branch I'm working on to remove the shared folder. It is not yet ready, but I thought it would be a good idea to allow interested people to have a look at the changes as early as possible. Feel free to have a look at the code and share your thoughts, ideas, code or whatever you want.~~

This branch is ready for review.

General stuff:

- [x] shares are mounted directly to the root
- [x] download shared file
- [x] edit shared file with internal text editor
- [x] upload to folder
- [x] use the right permissions if user navigates to a shared folder (at the moment a reload is needed)
- [x] navigate into sub-folders
- [x] show previews
- [x] rename shared item
- [x] move shared item (it is not allowed to move one share "mount point" into another one)
- [x] show shared files as files and not as folder
- [x] fix previews for shared files
- [x] check against root folder for name conflicts if a file/folder is shared
- [x] What happens if users start to rename a group share (fix & add unit tests)?
- [x] What happens if you delete a shared file/folder (file goes to both trash bin, owner and current user)
- [x] Use etags always from the files in the fscache, we no longer need a extra db entry for the Shared folders (should already work, but needs to be checked)
- [x] adapt unit test 

Check other apps:

- [x] encryption
- [x] trash
- [x] versions
- [x] check webdav/sync client
- [x] all other places where Shared/ might be hard-coded (everything in core should work)

Migration Tasks:

- [x] Add upgrade script: make Shared a real folder and keep the shares there by adjusting the file_target column.

Thinks you should know:
- It is not possible to share a folder above a share mount point.


Known Issues:
- Gallery doesn't work yet, I will work on it in the gallery repository.
- Activity still shows Shared/ in the path - can be fixed after merge