I used to always do this:
1. Water or Water/Ice - teach it water and ice moves
2. Grass or grass/other type - teach it grass and bug poison moves
3. Fire or Fire/other type - teach it fire moves
4. A flyer, preferably flying/dragon - teach it flying and dragon moves
5. A High defense (Ground or Steel or Rock or a combination of two) teach it steel rock and ground moves
6. A High Special (Psychic or ghost) - teach it psychic ghost and dark moves and electric moves
I used to always do this, now I pick pokemon I like
Eg. My pokemon emerald original team
1. Azumarill
2. Sceptile
3. Camerupt
4. Altaria
5. Aggron
6. Gardevoir
Ps. no. 6 can be interchanged with an electric type if you want so long as at least one of your grass or fire or flying has a second type that is ghost or dark or psychic (eg. replace altaria with Xatu and Gardevoir with Manetric in Emerald.