Returns the option if it contains a value, otherwise returns other.
Option<T> or(Option<T> other) { if (v == null) { return other; } else { return Some(v!); } }