5 I should use a more family friendly error.
9 I should move the comparison to after the result call. Then make `Result`
10 `AutoCloseable`, this way after being closed the results are read-only for the
11 most part and new ones cannot be added.
15 Since a `Result` can only ever have one result, `close` should be called after
16 every case. However for neatness, autoclose can still be used.