It seems to me that as laws continue to be passed forbidding smoking in restaurants, bars, and other public places, the general tide has turned against smoking. If we can legislate against this dangerous habit, I see no reason why it would be considered impolite to enforce the same standards in your home. Personally, I find it impolite for someone to ask to smoke in a non-smoker's home. The smoker is polluting the air for the residents, smelling up the furnishings, creating an ugly byproduct, and subjecting everyone to a health risk.
Now, knowing that you're a hostess who aims to please, I can understand your hesitance in asking a smoker to step outside. You could soften the request by mentioning something about a family member with allergies (it's true that you're allergic to bad smells, pollution and health risks, aren't you?). As far as the ashtray is concerned, I'd place it outside the doorway you'd like the smoker to cross while engaging in their unsafe and unsavory habit.

