1) Depends on the situation, place, context. I would never ask a girl that, that is probably the most offensive thing you could ask a girl that isn't working. In bars in SD most girls aren't hustlers or prostis, Sosua maybe. I think the key here is tact. If you made the initial move to start talking, dancing whatever, then the question would not be valid. If she makes the first move, and seems over-eager to be by yourside, use your judgement. If you have serious communication problems (i.e. don't speak each other's language), or are much older, then you would want to excercise caution - how ever, a girl in this situation might not be a prostitute per se, but someone looking for a provider. If unsure try some indirect questions to see what they are looking for - but don't ask that question directly unless you want to get slapped in the face.
2) I agree with I'll buy around, you buy the next move. Again tact is the key. If a girl brings another girl, I wouldn't complain about buying a few rounds. However, observe their behavior. If they want the most expensive drinks (i.e. champagne, tequila ($250 a shot at some bars), then excercise caution, even cut it off short if they are abusing your generousity. With friends bringing friends to your house, simple, tell them to pick up beer on the way. Nobody likes a freeloader, but you cannot escape the reality that some people don't have much money. I will treat my friends to beers every so often, it's not much to me, they enjoy it, I enjoy their company, I know that can't really afford everything I can. When we play poker, I'm the only one that buys beer, they don't, I will always give some out, but not too much - after all it's rude to be the only enjoying something when in company of friends. If somebody is asking for too much, even though you have been generous, call them on it. Relate the situation to a "starving" student situation in NA - without the student loans to pay for things, not bad people, but don't have much, sometimes you lose track and want things you don't have - it's natural.