Validate input for basic constructor
Make Union a variadic function