Get the first element of the Iterable. If the Iterable is empty, return None.
Same as firstOption.
firstOption
Option<T> get head { var it = iterator; if (it.moveNext()) return some(it.current); return const None(); }