So, having just wrestled the files API for uploaded files into submission, I think this would provide you with the all the options and features you want. The tricky bit might be engineering the Google authentication methods.
Probably a fair amount of coding work, but you will get the features you need.
Steve