Error handling best practices have changed in Rust yet again. Investigate [snafu](https://github.com/shepmaster/snafu) and [fehler](https://github.com/withoutboats/fehler).