I had a quick go at creating a google docs portfolio plugin:
So far it exports files to googledocs nicely, however user authorisation stage needs some work.
Overall it was a really nice experience but there were a few issues:
1) How to handle the shared stuff between portfolio/repoistory - i've just copied the hacky way which other plugins have shared libraries, but this is going to be a common scenario. The session key needs only be retrieved once for all
2) Why does prepare_package need to be abstract - am I missing some prep I should be forced to do?
3) Could expected_time not be implemented in the base class to do some sensible defaults based on fs?
4) I didn't get time to investigate but PORTFOLIO_FORMAT_TEXT didn't seem to be working as planned.