Better handle errors-like objects
Yay, say hello to OS.File API and "promises" with broken error details!
(#12)