When you dot-source a file, it's loaded into RAM, and functions which have been preloaded this way will therefore run slightly faster than if you just create scripts in a folder that you add to your $Env:PATH ...
There's virtually no difference in performance between putting a bunch of functions into scripts and dot sourcing those from your profile, versus putting them straight into the profile script. Either one will slow down loading of your PowerShell session, use some RAM, and speed up the eventual execution of the functions.
One other part of this I can answer right away: DO NOT create functions that wrap scripts. Put the scripts in your PATH, or create ALIASES to point to them.
I'm not sure there's an answer to the best way to handle this that is right for everyone, but I did want to point out that you'd overlooked the possibility of just sticking them in scripts and adding that folder to your PATH so that you don't have to preload them at all.
P.S.: I wrote up some more thoughts about the comparison (and about how I do it) on my blog:
Organizing Your PowerShell Scripts and Functions