Merge tag '0.6.0' into develop

Vist 0.6.0 upon the world

 - Be lazier about making dirs when writing
 - Use the old munge function b/c compat
Patch to throw if the target doesn't exist

list-groups, list-artifacts, list-versions, list-namespaces and
list-defs should all throw exceptions if there is no such dir in the
filesystem as this denotes that the target handle isn't known and the
client should not generate meaningful output.
Bumped version to 0.6.1
Merge branch 'release/0.6.1'
Merge tag '0.6.1' into develop

Vist 0.6.1 upon the world
Add succeed/fail to util
Rework reading FS api atop succeed/fail
Snapshots <3
Cleaning up the mess
Bumped version to 0.6.2
Merge branch 'release/0.6.2'

 - Remove exceptions for signaling API failure
 - Start using EitherM instead
 - Fix some API issues