[WIP] Full content width search results

:construction: :construction: :construction: :construction: :construction: :construction: :construction: :construction: 

This introduces
- Full content width search results
- OC.Search
- icons instead of type text
- formatters and handlers for search results
- cleans up css
- uses mime instead of mime_type
- deprecates OC.search.customResults and OC.search.resultTypes
- by default only handles generic search results
- comes with formatters and handlers for `file` and `folder` types
- restores the old result template when no formatter is present for a specific type to ensure backwards compatibility

@PVince81 how do I get the mimetype icon for a file when I am in the contacts app? How do I better encapsulate OC.Search?

@jancborchardt @MTRichards UI / css input is very welcome. I wanted to get this out as the first draft to discuss it.

TODO
- [ ] better formatters and handlers for calendar, contacts, bookmarks ...
- [x] remove resultTypes and customResults
- [x] don't lazy load the search result js & css stuff to make it more themable?
- [ ] make search_lucene add hightights / snippets
- [x] ajax scrolling for results

cc @andrewsbrown @MorrisJobke
Ok, the private members stuff works as expected, I just wanted to know if I can leave it like that or if I did something bad.

I'll look into https://github.com/owncloud/core/pull/12527