changed alot of the way the mstest interaction happens.  made it more straightforward.  moved alot of configuration out into interfaces that can be implemented by a specific test runner, or a user.