adds initial support for Maybe type