This pattern adds a boat load of complexity all over our code can we prevent using `null` as an invariant?