Translation Error Handling

Ran into a problem where if a translation threw an error, the 'ok' output from the lager call would actually get inserted into the app.config!

While I was in there, I took another stab at #79.

Right now, it allows you to `throw(unset)` in a translation and have the value not set, so you can add a case statement to check for a value in translations and if it's not there, `throw(unset)`

Future work on that includes creating a `cuttlefish` module for schema writer's API. that will have methods that throw specific errors (e.g. throw:not_found), will get there soon, but this is a simple non-breaking bugfix, so I figured I'd get it out there for review.