wrap variant inside maybe so that we can define the comparison operators.
reorganize files.
more file reorganization.
Added cases for regular and member functions to overload function.
First draft towards a monad library with a lot of things from Hana.
Update draft for overload proposal.
Cleanup.
update proposal.
Remove parameter type<ST> on customization point.
Remove parameter type<ST> on customization point.
replace match_all by match.
replace match_all by match.