Modified the handle function to return Either.
Addressed a compiler warning.
 - This expression should have type 'unit', but has type 'Either<unit,InvalidOperationException>'. Use 'ignore' to discard the result of the expression, or 'let' to bind the result to a name.
Renamed Either to Result. The discussion that led to the renaming is on: https://github.com/GreanTech/Qaiain/pull/26.
Simplified the return value of the failure case to a String. A public visible trace can be found in this discussion: https://github.com/GreanTech/Qaiain/pull/26#discussion_r15284785
Changed the return value of the failure case to a Disciminated Union.
Moved ErrorMessage type in Mail module, because Mail depends on it. See this discussion for more details: https://github.com/GreanTech/Qaiain/pull/26#discussion_r15447676.
Written the error message to the standard output stream, instead of raising an exception.
Returned an exit code in the case of Unknown message type. See this discussion for more details: https://github.com/GreanTech/Qaiain/pull/26/files#r15448628.
Removed a reference cell by returning a return code on each matched pattern's result expression.
Merge branch 'either-type' of https://github.com/moodmosaic/Qaiain into moodmosaic-either-type
Refactored magic numbers to named constants.