Switched delegates to NSArray instead of NSSet because we need to keep order