Search refactor predecessors: ImmutableStack, Option, More Extensions

@ikeough @lukechurch As discussed in https://github.com/DynamoDS/Dynamo/pull/3463
d2c519cf0bd0f3e1c9a5d214f533fda0fac6de1e adds documentation for `IOption` and `IEither`