Say I was trying to make a 3rd level Harpy bard. Do I remove its seven hit dice, feats, BAB and skills etc and start from scratch? Or do I add the class levels on top of all that? How does level adjustment come into it?
The 3.5e books go into some depth on how this is done - here's the relevant section from the online SRD.
To determine the effective character level (ECL) of a monster character, add its level adjustment to its racial Hit Dice and character class levels. The monster is considered to have experience points equal to the minimum needed to be a character of its ECL.
No, you don't remove its existing stats, you add on top of it. Level adjustment is added to its hit dice and class levels to determine effective character level. In the harpy's case, it's +3. So a third level harpy bard would have 10 HD (7d8 from the monster levels and 3d6 from the bard levels) and be ECL 13.