Дело в отличии самцов животных от самок в понимании предков. Часто вид называется по животному женского пола, если оно опасное, хитрое, либо может нанести вред: оса, пчела, куница, хорь(от хмарь, вонь), ворона, выдра, крыса, мышь, акула... Самцы же, в понимании древних создателей языка,должны быть крупнее, иметь большие рога или другое яркое отличие поэтому: не "ос" - а шершень, не "пчел" - а шмель, не "лан" - а олень или лось... Далее: нерпа - явно жен особь, а морж - точно мужик, ворона - женская особь, а крупный ворон - вообще другой вид, как и орел, беркут, ястреб, филин, а сова не такая колоритная - поэтому женский род, осетр, сазан, судак, лещ, ерш - мужской, а плотва, селедка - женский, кусачие касатка и акула - женский, а тупоголлвый кошалот и громадный кит - мужской, нарвал - 100% мужик, а ламантин - морская корова, ни рогов ни клыков, кабан - мужик, а хряк - это свин, наибольший диссонанс с детсва вызывает антилопа гну - рога есть, борода есть, но название жен рода; вообще различные названия по полу чаще всего у домашеих животных: корова-бык, лошадь-конь, овца-баран, курица - петух, собака - пёс. Чаще различные названия самцов и самок относятся к домашним животным. Касательно козы/козла - особи слабо отличимы, а отличие отбаранов и козлов, видимо по тому разницы в именовании нет. Так же возможно это произошло из-за вредного характера животных, хотя, другое вредное животное - осёл, мужской род, а женский - не оса, а ослица. У ос и пчел сложно с определением пола, но в основном, это женские особи, а пчелы и осы мужики встречаются редко - это трутни.