[4.2] Multiple composer registrations were not merged correctly

The use of the `+` operator over `array_merge()` resulted in the loss of some composers, because `+` replaces duplicate numeric keys, while `array_merge()` appends.

This is the failing unit test. I will push the fix in a little bit to prove this fixes the problem.