I think maybe a Bichon Frise or a Maltese would be good for these requirements, even though it would be hard to find a type of dog that meets all of these and is very obedient. Most of the toys and terriers can be a little high-strung and hard-headed. Definitly get one from a really good breeder or a rescue group. It pays well to pay that extra bit of money for a good dog.