Refactored Competition domain structure and corresponding logic providers.