Extract promotion subject interfaces
Implement new interfaces in core