Change/higher kinded

This is the new higher-kinded scheme. 
Does this work for a singleton type with an underlying type that's an alias for a lambda class?
```
type T = Foo[Int]
lazy val x: T = ???
typeOf[x.type].LambdaClass
```