Just a point on macro- vs. micro- evolution. Micro-evolution is simply another name for variation. Variation is built in to the genetics of any population. Dogs are a very good example. Human intervention via breeding has maybe pushed this variation as far as possible where dogs are concerned, but they are a good example of how much variation is possible. And yet canis familiaris is one species.
What is referred to as macro-evolution, however, requires new forms and functions, and these do not come about randomly. They do not come about at all, actually. There is no known way for a cell to produce a protein new to itself. And, should it do so, the cell wouldn't know what to do with it anyway. It would simply destroy it and use its amino acids to construct other proteins which were of use to it. We have been working with e. coli bacteria for over a hundred years now. These little bacteria are among the 'simplest' forms of life known to science. We have subjected them to every mutagent (mutation-causing agents) known to man and our results in over 2.5 million linear generations? Some fat e.coli, some slightly altered internal pathways, and millions and millions of dead e.coli. But nothing which was not clearly an e.coli.
Not even a simple bacteria, in 100 years and more than two million generations, can become something other than itself. E.coli has a generation time of about twenty minutes. Human beings have a generation time of, minimally, about fifteen years. Apes are about ten years. So call it ten years for the sake of argument.
Two million generations times ten years per generation. We're up to twenty million years with no sign of a change which would lead to anything resembling macro-evolution. Even with 4.5 billion years presumed for planet earth, evolution simply does not have enough time.
But we have always had plenty of variation. And that is not at all the same thing as the sort of evolution which would turn a bacteria into a bear.