This library fills a bunch of important niches. A Maybe can help you with optional arguments, error handling, and records with optional fields.