Add support for type parameters for classes

Allow type parameters for class, ie `class Foo<Bar, Baz>`

/cc @vojtajina 
Maybe validate the type parameters too?