To sum up what is discussed in the CFA curriculum, it discusses 3 types of spreads. They are used to compare a risky bond to a Treasury bond (assumed to be risk-free).
Nominal spread
Simply computes the difference between the YTM of the risk-free bond and the YTM of the risky bond.
The major problem of this measure is that it doesn't take into account the shape of the spot yield curve.
Zero-volatility Spread or Z-Spread
This spread is actually a single value that needs to be added to every spot yield of the curve in order to make the present value of the risky bond equal to the present value of the risk-free bond.
That is, if the present value of the risky bond is $v_b$, then the Z-spread $z$ is the value such that:
$$v_b = \sum_{i=1}^N \frac{C}{(1+R_f(0,i)+z)^i}+\frac{FV}{(1+R_f(0,N)+z)^N}$$
where $R_f(0,t)$ is the spot rate for maturity $t$ for a risk-free bond (not annualized).
This still doesn't take into account any embedded option to the risky bond.
Option-Adjusted Spread (OAS)
This last spread is used to measure the impact of the optionality in the bond. It is defined as follows:
$$\text{OAS}=z-o$$
where $o$ is the the price of the embedded option.
For callable bonds, the option benefits the issuer (it allows him to buy back the bonds if rates go down, i.e. bond prices go up), and $o>0$ hence $\text{OAS}<z$.
For putable bonds, the option benefits the bond owner (it allows him to sell back the bonds if rates go up, i.e. bond prices go down), and $o<0$ hence $\text{OAS}>z$.
It there is no embedded option, then $o=0$, $\text{OAS}=z$.
I believe spreads are to be understood as being used to measure the risk inherent to the core bond, and not to the option that are embedded to it. Hence, if the bond was callable, you required more yield for the bond, but the "core" bond only required a spread equal to the OAS and not really the spread computed by the Z-Spread approach.