Cancer Stem Cells: Philosophy and Therapies