Refactor plugins

This is an initial refactoring to separate out all the code for the current storage plugins (github, googledrive, dropbox) into their own individual folders rather than spread throughout the code.

It is mergeable, but the plugins have not been completely refactored out into their own folders (for example, the views have still not been looked at).

Submitting this PR now because I haven't had time to finish the last of it and these are pretty big changes that could affect other people's PR.