Add a 'maybe' modifier for all functions.

Sometimes, data in a type is simply optional. If it is present though, it should be of expected type. This feature is inspired from the `Maybe` monad in haskell. It generates a `check.maybe.*` wrapped equivalent of each function at startup.