She's lovely and we adore her. She's gorgeous natured and smart. But I've realised we've let her get a bit naughty and I'm not sure entirely how to go about correcting it.
She is a nearly 9 months old Cockerpoo.
She still jumps up at people in a waggy enthusiastic way. She doesn't jump up at me. But she does at others.
She barks at next door's cat who sits on top of the fence looking haughtily down his nose at her.
She begs at the table when we're eating. (Unfortunately DS3 kept sneaking her titbits but I have been super vigilant about him not doing this). But she hangs around the table expecting something and sometimes jumps up. 
She runs off with stuff like socks and bits of Lego and thinks it's a marvellous game.
If we take the stairgate away she shoots upstairs and we don't want a dog that goes upstairs as we have cream carpets.
She jumps on the furniture. I allow her onto the sofa at night in the little sitting room and I see we've created confusion for her as she thinks all sofas are fair game.
Otherwise she's magic. Her recall is excellent. She sits, lies down, gives a paw and rolls on demand. She walks beautifully on the lead. Is fully housetrained. Sleeps well. Is gentle and playful with the children. Hardly ever barks (except when next door's cat is sitting on the high fence). Is very good with other dogs. But I think she thinks she's a human being.
We did a lot of dog training classes but her behaviour is less than perfect.
It's not her is it? It's us?
Any ideas as to how to correct these things.