Refactored to use underlying ICollection<T> instead of List<string>