Initializers now return instancetype