Refactored the maybe monad.
Made sure we check for Option types.
Updated documentation.