You have two choices. You can sit her down and lay it out for her. Telling her you will #1 not be disrespected in your home or you can continue to allow her to disrespect you in your home. 
 
If you allow it now it will continue from here on out. You can respectfully tell her that there is absolutely no smoking in your house.. and everything else that is driving you crazy. Let her know that in the future you would appreciate a headsup to when she is planning on coming out for an extended visit.  
It comes down to demanding the respect and as far as the bf goes... he should have already said all of this to his mother before any of this came out of your mouth. If he hasn't, then he needs to man up and set her straight or in my opinion... leave with her. 

 I wouldn't put up with that at all!