A low-cost abstraction implementing the NewType pattern in Elixir
A protocol for unwrapping values from NewTypes.