Refactor TypeVariableName to use a single upper bound

@JakeWharton