Feature/couch

A bunch of changes to support plain couchdb with mirrors
the problem is that raising an exception here will make all sorts of command fail in weird ways if there is a problem, like `leap list`. that is not desireable, i think.

so, i was going to make it so that the assert macro will only produce a warning unless we are actively compiling the hiera files. also, maybe add an warning macro.