[Stable5] backport  Google Drive SDK 

Basically a number of cherry-picks from https://github.com/owncloud/core/pull/3392. 
Submitted it as a PR because of large amount of changes.
I tested it a while and it works much better than current stable5 implementation.

@karlitschek @MTGap 


Fixes #3333 Fixes #3334 Fixes #2229 Fixes #2054 Fixes #683 Fixes #3035 Fixes #2087 Fixes #190 Fixes #2013