Use matrix builds.

This breaks down the previous `standard` test run into four smaller test
runs. In tests on my branch this cut the total build time in half.