Replaced List<T>::setAutoDelete() functionality with smart pointers