Instancetype is always required in init methods, as per modern ObjC conventions