I wan't to keep Skitty in my main team for the majority of the game, but I'd like to know what moves should I teach or remove in order to make it as useful as possible?
If it matters I'm going to be playing Pokemon White 2.
The moves you teach it may largely depend on what ability your Skitty has;
This ability will give all of Skitty's attacks Same-type attack bonus, so priority moves like Sucker Punch (must be bred in) can get a little extra power behind their speed. It will also let Skitty use moves like Thunder Wave (TM73) on the otherwise immune ground types.
A downside to normalize is that ghost types will be immune to all your direct damage - this can be mitigated using Foresight (learned at lvl4). Additionally, Rock and Steel types will be highly resistant to your attacks.
Cute Charm or Wonder Skin (hidden ability)
Zen Headbutt (must be bred in) is a good counter to normal types' greatest weakness - fighting. High priority moves like the previously mentioned Sucker Punch or Fake Out (move relearner) are still a good choice.
Skitty can also learn Baton Pass and Wish though breeding - combined with Calm Mind (TM04), this can make for a fairly decent support (combine those three with a special attack like Ice Beam (TM13) or Thunderbolt (TM24) to let skitty take advantage of its own stat boosts.
Smogon University goes into further details on specific builds, giving suggested EVs, natures, and items as well as strategies. You can copy those movesets to the letter, or modify them to your liking.
EDIT: If you are looking solely to teach moves to an existing Skitty, and not do any fancy breeding;
And if this is just against the NPC's throughout the story, always remember that there's nothing a little back-tracking and grinding out a few levels won't cure.
You guys are crazy, I run skitty in competitive vgc and it does fine. For doubles, fake out, helping hand thunder wave and a preference move suited to your team, give it an eviolite and max it's HP and defense and I guarantee he'll be useful. In single battles run baton pass, cosmic power, wish, protect. Simple cleric but 90% of the time you wall Pokemon very easily. I've walled garchomps dragonites cresselias, anything short of focus blast mega Alakazam I've had little trouble setting up on. Good luck! Fyi purrloin is another great option, same idea but run foul play, yawn, attract, and preference move. Prankster really helps here and purrloin outclasses thunderus defense wise. Foul play has the possibility of 1hko ing landorus metagross and most base 150 attack pokemon. So another useful cat fer :)
Ignoring the fact that Skitty isn't a good pokémon, the best way is to use Choice Specs. This has the disadvantage that you can only use one attack, but this one will be more powerful (increased by 50%).
By TMs, you can teach:
Cute Charm would be better here, 4 normal attacks are useless. In general, normal attacks are not useful, because there are no types it's effective against.
The best nature is Modest, but you can't influence it anymore.