Currently either is never constexpr because it implements a destructor.
This is needed in the generic case as the types for left or right might have a custom destructor.
Using type_traits we can test if this is the case and make Either a literal type(constexpr) if we deal with pods only.