add `errorable` class (like `either`)