Add support for operator== to Optional
Remove option checkers, handle that through the type system

Use a specific type for InsertCompleterDesc with checks in
the option_{from,to}_string functions