Interfaces and Unions in GraphQL