RFC for "fat objects" for DSTs

This is intended as an alternative to #5.
this is almost certainly missing the lifetime `'a` on `&self`. Otherwise it desugars to:
`fn as_element<'a,'b>(&'b self) -> Option<&'a Element>`, which can only be implemented by either returning `None` or a `Some` of a `&'static Element`.