Allow classes to extend non-class constructors with interfaces

Related to https://github.com/Microsoft/TypeScript/issues/511

This patch isn't really correct, it doesn't look at the constructor
signature return type to determine what the extended type is, so
it only works when you hand-craft a type that looks exactly like
a TypeScript class but wasn't created using the class keyword
Update LKG