How to reduce boilerplate when wrapping errors

Wow this is great. Wish I had seen this before jumping on the error-chain boat. At some point I will probably refactor with one of these more recent libraries. Thanks for the info!