use new-style constructors everywhere