Dead simple error context framework aka Either monad.