Change the return type of convenience constructors to 'instancetype'