Personally, I just use my fingers. Crack the egg over a bowl that's going to hold the egg whites, and then hold my fingers just far enough apart that the white can get through but the yolk can't. I put the yolk in a separate bowl (or in the mixing bowl with the other ingredients, depending) and repeat until I have enough egg yolks/whites. I don't always crack eggs in a way that lets me use the shells for separating eggs, but my fingers do the trick just fine.
Best of all, they're free and I always know where to find them.