About the shedding issue. Breeds with a "double coat" are usually heavy shedders, think Labs, Goldens, Huskies and other similar dogs. A double coat is one that has course long hair and soft silky hair, that is the hair that is shed often and foats around the house. There are many breeds that have single coats, the short coated dogs such as Jack Russels (not a good choice for children), Staffies, Bull dogs and my breed of choice, the Vizsla
. Single coats do also shed, but because of their length and the fact that the hair is fairly course, it just falls to the ground and you usually do not end up eating it
. The other coat type is the "non-shedding" that was mentioned earlier, but like the others said, they require frequent grooming, which can get expensive after several years, you can learn to do it yourself to cut costs. Shnauzers, and terriers with "wire" coats will need to be stripped, that is to pull the old hair, something a groomer should do.
And there is no such thing as "hypo-alergenic" just because a dog does not disturb your friends allergies, does not mean it will not bother yours. The allergies are caused by the shedding of skin cells, and all dogs (and people) shed skin. Some dogs can actually be allergic to people too.
Seriously consider visiting a shelter, you will be able to play with the dog before making your decision, which allows you to see if your children and the dog get along. Some shelters may also let you "borrow" the dog for a day to see how it will work in your home.
Good luck, let us know what you get