[4.2] Testing Improvements

Let's ensure travis always sets up composer correctly and uses the newest phpunit.
I've also cleaned up each component's require-dev stuff.

---
Replaces #4476 and #4311.