Repository API

Ticket #9937

Replacing https://github.com/openmicroscopy/openmicroscopy/pull/972, which I could no longer append to.

Support for listing, up- and downloading, and deleting files, creating and deleting directories, and adding annotations