Fyi you cannot create custom race as in having new race add among the standard one - you can only replace one race during the game and that's pretty much it.
I believe there's already a tutorial in the tutorial section with the information on what every race has to have to be on par with the standard races (number and type of buildings, etc.)
There are some very definite ways around this. I think spreading this around is a good idea:
http://www.moddb.com/mods/warcraft-iii-nirvana
Nirvana is a WarCraft III mod that aims to GREATLY improve everything about WarCraft III, by introducing NEW races, without replacing the old ones (Which is done) GREATLY improving the graphics, (Which he's working on) And other changes like a custom injector to inject ones own code and plugins into WC3 for use with mods, an example he has is a plugin that displays Mana Bars like HP bars, using custom MPQs so you do not have to overwrite anything in the current MPQs, a custom EXE so you don't have to overwrite WC3s EXEs, and many other things.
The method he uses for using the custom race is based off of the Handicap method, except the Handicap menu REPLACES the Pick Race menu. When you pick your race at the pre-game screen, it then loads Local Player-specific graphics and sounds, so you actually DO have a custom UI, mouse cursor, soundtrack, sounds, and other graphics, unique to each race.
ALMOST all of these features are functional and currently useable (All but the graphics).
@OP
But if the coding part intimidates you, you can take a look at some of these things:
Modified Victory/Defeat Condition
To use this, all you gotta do is Copy/Paste the JASS into the "Map-Specific Code" section of your map. When you go into the Trigger Editor, that is the little map icon followed by the name of the map.
http://www.hiveworkshop.com/forums/general-mapping-tutorials-278/how-create-full-working-custom-race-119435/
This will explain everything else a custom race needs and how to do some of it.