Added searchByTags to view, storage and cache

Needed to be able to get a flat result list of all favorites.

@icewind1991 @schiesbn @nickvergessen please review

- [x] REQUIRES: getTagsForObjects https://github.com/owncloud/core/pull/12409
- [x] TODO: add unit test for sharedstorage
I also wonder... @icewind1991 asked me to pass `IUser` to the tag manager.

One problem I could see for `searchByTag` is that you might not actually have an instance of another user but only the one from the session. We'd need to add yet another provider in `OC::$server` to be able to get/create the user object of another non-logged in user ?