An implementation of the option type, sometimes known as the maybe type.

An instance of an option type is an optional value. Either it's none, or an
instance of Some:

var option =require("option");

var some = option.some("Bob");

var none = option.none;

A function that returns an optional string isn't that different from a function
that returns a string or null. The advantage over null is that options
provide a number of functions that help with manipulating optional values.