Phantom
ensure
defn
(Fn [a, (Phantom a)] a)
(ensure a p)
is a function that takes anything and a Phantom, ensuring that
the type contained by the Phantom and the type of the first parameter match.