Updated DSL to be more consistent and use `Option`s.
Updated DSL for consistency in operations, fixes bug with ambiguity between function, partial function, function returning option
Slightly changed map func symbolic method name