Added QuerySyntaxProvider type check

```scala
val u = User.syntax("u")
val g = Group.syntax("g")
User.as(g)  // it makes this compile error! 
```