Make PhantomData dispatchable to write static methods on dyn-traits

A TypedMetadata<T>-style struct (see link below for what I mean by that) however can technically be made to support this (which is something I've mentioned in that thread too):