Handle errors in an actual error handling way
Strict and tidy
v1.0.0