Gene splicing and mutagenesis by PCR-driven overlap extension