Topic/cooler couleurs rebased

Rebase of https://github.com/scala/scala/pull/2328, including https://github.com/scala/scala/pull/2332.

This is Paul's Testicolor with Test with DiffFilter so the test doesn't fail under Java 7.

The build refactor is also due to Paul, or to some emanation of Paul that continues coding after he goes to sleep.