A more detailed discussion of compiling, linking, and #includes is accessible.
It's also useful to create a library of commonly used classes so that you don't have need to add many, many .cpp files to each project you and your students write. Creating libraries of commonly used classes makes it much easier to keep things up-to-date and simplifies what students must do to have access to classes as supplied in Tapestry.
Instructions for creating projects and libraries for three families of compilers are accessible. These instructions were written as part of a workshop for teachers of Advanced Placement courses, but are applicable to users of A Computer Science Tapestry as well. You may see references to classes apstring and apvector; these are standard AP classes.
You should not include files for templated classes in a project or library. This means that the only AP class that goes in a project, or that's used in creating a library (see below) is apstring. The classes apvector, apmatrix, apstack,, and apqueue are templated classes and should not be part of projects or libraries. If you have questions/comments, please let me know.