Configuration manifolds and constraints In Classical Mechanics there's this notion of configuration manifold. Although I've heard about that a lot and although I often use that concept, I'm not sure I really understand them well because I've found no book talking about that, except Spivak's Physics for Mathematicians.
So my understanding is the following: the configuration manifold of a system in Classical Mechanics is basically one smooth manifold $M$ whose points are possible states of the system. In that case, for one particle in three dimensions, each state can be considered the point in space the particle is and so $M=\mathbb{R}^3$ is the configuration manifold.
Now, reading about that on Spivak's book it seems he only talks about configuration manifolds when talking about constraints. So what is the relationship between configuration manifolds and constraints? The configuration manifold must already include the constraints in some way? 
I thought before reading this that the configuration manifold would be simply a manifold we choose whose points label states and that a constraint would be to restrict the allowed states to a submanifold of the first one.
What really is the precise definition of configuration manifold and how it relates to constraints?
 A: I think that your description that the points of the configuration manifold are possible states of the system is as close to a precise definition as one will find. So for $n$ particles in three dimensions, the configuration manifold is just $(\mathbb{R}^3)^n$.
As for how this relates to constraints, consider the simplest example: two particles attached with a rigid rod with length $L$, in three dimensions. Let the particles have positions $x_i$ and $y_i$, $i=1,2,3$. Then the constraint of a rigid rod is that $$L = \sum_i(x_i-y_i)^2 \tag{1}.$$
The configuration manifold of this system is that subset of $(\mathbb{R}^3)^2$ that verifies (1), that is, a level set of the distance function.
It is a general principle that the level sets of a smooth function of the coordinates are also smooth manifolds. Hence we can say that imposing a constraint is picking out a submanifold of the configuration manifold for an unconstrained system.
A: OP is essentially asking about terminology. As usual, be prepared that different authors call different notions differently. 
Well, here is a suggestion: Call the configuration space before (after) the constraints are implemented for the extended (physical) configuration space, respectively. 
More generally, if an author is talking about a configuration space, it must be deduced from context whether he is talking about the extended or the physical configuration space.
A: Usually people call configuration space, $\mathcal{M}$, to the space of all posible coordinates needed to determine your system (although,I would include the velocities too).
In non-relativistic theories
The coordinates are three... and we need to provide three coordinates per (point) particle, i.e., for $n$ particles one needs $3n$-coordinates describing a $\mathcal{M}=\mathbb{R}^{3n}$ space.
If you have two particles contrained to be separated by a distance $d$, this means that you will need one less coordinate to determine your system,${}^\dagger$ that is you need five intead of six, say three Euclidean coordinates to determine the position of the first particle, and two angles to determine the position of the second (wrt the first one), then $\mathcal{M} = \mathbb{R}^3 \times S^2$.

${}^\dagger$ The constraint kills only one degree of freedom because it is a scalar constraint.
