tests: Split test runs by release, and retry as needed.

 - Randomized test order
 - Retry with different release on default tests
 - Always run 3 jobs in parallel, we are usually not CPU-bound
tests/30-audio-branches: use $release.
tests/18-upgrade: Test trusty->utopic

Also, precise->trusty is not experimental anymore.
tests/20-logind: Test utopic.
tests/30-audio-branches: Remove testing of audio branches

 - We now rely on commit ids
 - We can easily test on multiple channels
genreport.sh: Generate HTML report from a set of test results.