Uma organização clara (pelo menos na sua cabeça) à qual você se apega ao longo do caminho é, de longe, a melhor solução. Qualquer movimentação automatizada de arquivos quase certamente causará mais confusão do que limpeza. Haverá problemas com a name name clobbering, e qualquer desvio que você tente fazer acabará sendo mais bagunçado quando for processado também.
Seria muito fácil (como em apenas algumas linhas) escrever um script para localizar e realocar arquivos com base em suas extensões, mas você teria que ser muito mais específico com sua pergunta para obter um bom exemplo disso .