Yes, when you branch off of main, and create another branch, let's call it Dev, it will be an identical copy of EVERYTHING in the main branch, including the tools folder, if the tools folder is under MAIN.
That question suggests to me that you need more experience playing with branching. I encourage you to create a TFS Project called Sandbox or whatever. Copy your stuff into there and play around. You seem to want to get it perfect first, which is understandable
with something as important as your source code. But in a sandbox, if you mess it up, just create another project and try again. The sandbox will allow your learning to be vastly accelerated.
In answer to your other question, when you go to do this for real, and want to retain history, yes, you will use the MOVE function. It will retain history. but it may appear indented. I can't quite remember how it looks. I am at a location without
TFS so I can't check it now. But try a move in TFS source control on something small and harmless so you can see what it looks like when viewing history. Move is great that way. You can rearrange your source tree as you improve your design. But naturally you
will want to do it infrequently because it confuses other people who are working with the source code. And moves will not move local files that are outside version control, like the obj and debug folders. This means some garbage gets left laying around on
local drives after a move and that can cause issues.
I have never used TFS Dependency Replicator. Sounds cool. I simply manage this manually. I would have tools source in one product. It might even be considered its own product. Like this
Now each consuming product will have a Tools folder underneath the MAIN branch (and by implication, under every branch off of MAIN). Like this picture in Martin's article
Under that consuming tools folder, you might have subfolders for each release. or just one for whatever version you are using. But the developer of the consuming product will put whatever they need in there when they need it. It is typically only the binary
output from the desired release version of TOOLS.