Stem Cells: Biology, Ethics and Potential for Medicine