constructers are supported, yay!
generics are supported... yay, all the things!