Idempotent calls and more CLI exposure.

* Added listLabels & listCollaborators to CLI.
* Better error handling and message formatting.
* Idempotent calls for reads and writes (errors and data are returned to
* user).
* Improved code formatting.

Fixes #34
Fixes #38
Fixes #39