There are so many great dogs out there who need homes. Consider a miniature poodle. We've had three and some of their positive points include: they don't shed; they are people dogs and have to be around their people; they are easy to train; being small they are easy to take places; they love to play ball (takes care of the exercise issue) and they are very affectionate.
On the downside, I do have to add that they require regular grooming every 4-6 weeks.