An Introduction to Genetic Engineering - Nicholl, Desmond S.T (Cambridge University)