I've recently been painting my Oh's place in new neutrals before selling. There were some really horrible wall colours. Quality street purple in the kitchen, bright puce in the spare room, and purple bedroom.
I debated whether to use an undercoat, but in the end didnt.
The tip is to use good quality paint to get good coverage, I recommend Crown over Dulux.
The purple bedroom, worked particularly well- i used crown suede finish paint in "Chalk" and after 2 coats, you couldnt see a bit of the purple.
Used Crown "soft linen" (a creamy white) on two walls in the bedroom, "on the rocks" on the other 2. The soft linen needed 3 coats, the rocks prety much went after the first coat.