Well it's your project so do it how you feel would be best.
Here is how I was gonna go about it:
wiki:
TF2 Wiki
It has the speed and health of the classes there, so you can make them identical.
Everything else, like perks, weapons, scripts etc, you can derive from there.
For example
My scout class would look something like this:
-speed 1.33 (including Lightweight Pro)
-health 125 (110 with 'sandman equipped)
As 'Sandman' you can equip the riotshield, make it so that an actionslot does the following:
- remove all weapons
- give and switch to riot shield
- decrease health to 110
- increase speed (just enough to compensate the loss of speed caused by the riot shield)
when actionslot toggled again, reset everything back to normal.
-add superjump type thing (to emulate double jump)
-perks: marathon pro, Sleight of Hand Pro, Lightweight Pro, Ninja Pro
-weapons: shotgun, pistol
- scripts for the 'Bonk! Atomic Punch', and 'Crit-a-Cola'
everyone should have unlimited ammo, since that's how it is in TF if i'm not mistaking.
Hard classes will be pyro (you can't make pyro, so maybe change it to 'psycho' and give him crazy weapons, like 10 claymores, c4, throwing knifes/ tactical knife, dunno, just thinking out loud) and medic (how to revive other players?, check if it's possible to give negative damage to a gun? if so, give him a special gun, like PP2000, and give that gun negative damage, so shooting people with it will give health. Set max health to values that can be found on that wiki.. Probably not possible (the negative damage part) but worth a try)
Some other things will be hard to do as well, like rocket jump? (superjump instead?) and other things will be simply impossible.