Joining new yarn is such an important question to answer, and is closely related to weaving in the ends. Another method that didn't get included in joining new yarn is one of the simpler methods.
The ideal way, with feltable yarns, is to spit join. But you can also do this:
When you have about a foot of yarn left, working in a inconspicuous area of your knitting (like by a side seam), take your new ball of yarn, and for a few stitches, knit with both the old strand and the new strand held together. I find this works for heavy slippery yarns quite well. In the end, you can leave short tails on the wrong side of your work, or weave them in using a duplicate stitch.