The diverge! macro and gives you easy control over the flow of your functions and appropriately separates concerns using nothing but Option.
diverge!
Option