This transport extends Email::Sender::Transport::Wrapper,
meaning that it must be created with a transport attribute of another Email::Sender::Transport.
It will proxy all email sending to that transport,
but only after first deciding if it should fail.

It does this by calling each coderef in its failure_conditions attribute,
which must be an arrayref of code references.
Each coderef will be called and will be passed the Failable transport,
the Email::Abstract object,
the envelope,
and a reference to an array containing the rest of the arguments to send.

If any coderef returns a true value,
the value will be used to signal failure.