Before you spend more money on expensive dog trainers or products watch this video first http://OnlineDogTraining.enle.info/?8nMv
is all depends on how involved you get with the training as well. A good dog training can retrain or teach most any dogs to behave for them - however unless you yourself take part of the training, establish your hierarchy and rank in your household, the dog may obey the commands of the trainer, and ignore yours as soon as the trainer leaves.
There is something called a pack order in dog behavior, and right now - your dog seems to outrank you. Get her respect, her immediate obedience at all times, and you will solve her problematic behavior, trainer or not. It requires for you to get up and come out of your comfort zone, go back to basic training and for you to actually work the dog and stay on top of her behavior at all time, until your training issue is resolved. This is at times hard to explain - for some folks it must be seen and visualized to be understood.
You need to also understand that some things the trainer may do or suggest, may well go against your grain and may make you feel bad or like you're mean to your dog. Not so the dog though, dogs live for an ordered life, for someone who is in charge, and if that someone is missing, they often feel they need to step in and take over.
F.e. when she nips or growls at visitors - in her mind she puts them into their place, establishes territory and dominance [since in her book you are apparently not], and then she is fine with them. This is totally normal dog behavior if another dog would come to visit, a bit rough housing and posturing in a basically good natured dog, and when the visiting dog acknowledges the higher rank of the "home team", they hang out and play, might peacefully share toys or treats - as long as the ranking order is kept in tact. You can start an immediate dog fight by showing preferred treatment to the underdog and "dizzing" the top ranking dog.
If you're not familiar with the inner workings of dogs in general, a dog trainer may well be your best choice of getting on top of your girls' issues. See if you cannot negotiate price with the trainer, or at least pay for one or two lessons, have her show you how to train your dog and then go from there... If you feel you need more time with the trainer afterwards, you can always decide later on.