Returns the last element as a Some, or None if the Iterable is empty.
Option<T> get lastOrNone => isEmpty ? const None() : Some(last);