chore(di): Replace homegrown DI system with PHP-DI

Fixes #6387