Add validation for argumentsTypes in unions.
Refactor habitationTemplate check from UnionType to MatchExpression.