Stephen Colbert to replace David Letterman