One in four people will get cancer. Yet more are beating the disease or learning to live with it than ever before.