move core functionality from event listeners into fixture manager (add service provider)