there are *2* different Zora Species.
this is explained in Oracle of ages.
the "evil River Zora's" which are the ugly fish things that shoot fireballs in the 2d Zelda games
and the "ocean Zora's" (or the ones in OOT) that are completely sentient and an entire race.
I personally believe that windwaker is the final zelda game, which means it takes place after link to the past *spoiler* look at the placement of the castle in hyrule, and hyrule field, it STRONGLY resembles Link to the Past *end spoiler* and i also believe it is quite a bit longer after OOT than 100 years. That said, by the time of LTTP, most of the zora's are the evil river kind. The kind that eventually turned into the helpful manfish map people.
Now, becuase the "Ocean Zora's" turn into "Ocean" i believe they eventually find a living on the coast of some odd island somewhere (like where Oracle of Seasons/Ages takes place)
The Gerudo, being guided by the gods to find higher ground (or probably found out to go to higher ground through somewhere else) probably kicked the Gorons out, and became the Rito. maybe a Zora somewhere and a Gerudo had a happy family, which would explain the blood line thing. (However, where does it mention that they have to be from the same bloodline, i missed that.)
Now, the traders ARE goron. period. Theres no way around it. they ARE goron. The game even states this.
The Koroks are the kokiri, it explains this. now, you might say "if the kokori leave the forest they die" now, at the END of Ocarina of time, they are all dancing around in hyrule field, even the kokiri. and "they die" it means "they will grow old and die" not die instantly.
The Deku tree eventually turned them into the "koroks" for whatever reason seemed reasonable to him. now that they are koroks, i don't believe they could possibly grow older and die. so, they CAN leave the forest, not being able to grow old and die.