List and Vector are template class, so I delete their .cpp files, and
move their definations of the template function to their own header
files