Log detailed build matrix information when matrix is in invalid state

The original motivation for accounting for 'created', 'queued' and
'started' states was to eradicate 'Invalid job state' errors we were
seeing in the wild, but upon further reflection, we believe this
should not happen.

Unfortunately, we are not sure about the real reason for the invalid
state, so log more information about the matrix instead, in order to
gain more insight.
Remove #matrix_state specs

These aren't needed
Added duration variable to notification template. Fixes travis-ci/travis-ci#1427
Merge pull request #326 from Joshua-Anderson/build-duration

Added duration variable to notification template. Fixes travis-ci/travis-ci#1427
more stubbing
Revert "more stubbing"

This reverts commit ef1b4421a8e0ac59c8e9b0cfd8c8cec1e1b8b506.
fix services/sync_user/repositories_spec to not mix our own stubs with rspec stubs (just because that's confusing)
Don't take pull requests into account for branches list

When we build a branches list, we should not take pull requests into
account, because they're not really on the given branch - they're just
targetted at it.
Merge pull request #329 from travis-ci/ps-get-only-pushes-for-branch-list

Don't take pull requests into account for branches list
Fix branches ordering

Previous way of ordering was ordering by name first, than by
finished_at. It resulted in getting 25 first branches by name and then
ordering it by finished_at DESC.

This commit changes the situation to get all newest builds per branch,
then order it by finished_at DESC and then limit them to 50.
No need to order inner query when getting branches
Merge pull request #330 from travis-ci/ps-proper-branches-order

Fix branches ordering
Revert "No need to order inner query when getting branches"

This reverts commit 58a11d21cd15173577040129874ce50f0b72a1d3.
Only denormalize a build if it's the most recent