Replace By[] as foundBy in ISearchSourceElement with string to remove circular dependency.
Moved extension methods to remove circular dependency.
Moved extension method to remove circular dependency.
Remove dependency from Exception class to By.
Removed circular dependency between Wpf.Base and Wpf. Added comments about others.
Moved ISearchSourceElement and IRegisteredElement to reduce circular dependencies.
Introduced IHasStrongReference interface to break circular dependency between Wpf namespace and Invoker.
Moved Invoker to own namespace to remove circular dependency. Renamed to OnUiThread so that the name does not collide with namespace name, and also because it gives more fluent syntax.
Moved ISearchSourceElement from Search to ElementFactory to remove circular dependency.
Moved HwndWrapper to remove circular dependency.
Moved ByControlToStringCreator to remove circular dependency.
Moved a lot of types into Common and Debug namespaces to remove circular dependencies.
Moved Configuration to remove circular dependency.
Added comment about circular dependency.