Use XMLHttpRequest directly

jQuery uses getAllResponseHeaders function for getting response headers,
even for getResponseHeader. As far as I know, there is no easy way to
get original xhr object and call getResponseHeader on such object.
Because of that getResponseHeader is broken on firefox with CORS.

I rewrote Travis.ajax to use XMLHttpRequest directly in order to fix
this, the compatibility with jQuery.ajax is mostly handled.
No need to do hacks with Location header or Content-Type anymore
Use $.ajax when testing to not break jquery.mockjax
Use view.jobIdForLog instead of showDownloadLog

The latter is not always refreshed, I don't have time to debug it more
thoroughly
Update Ember.js
Router changes for new ember.js
sign out before resetting app
Use jQuery.param for generating query string
Update pusher
Use uncompressed version of pusher, we compress everything anyway
Revert "Revert "Revert "Remove sidebar elements, which need to query API

This reverts commit 9ca18331037f5e7af4bbbbb57ec9ab902c063a5a.
Log router transitions
Don't refresh duration when record is loading
Make Travis.ajax.ajax return a promise
Set container on View

After updating Ember it complains that using defaultContainer was
deprecated, in order to silence the deprections I just set the container
so it does not uses defaultContainer
Don't error out if response is not valid JSON
Fix odd behavior on running jobs list and on queued jobs list

In order to not load too many repositories when not needed I was using
construct of repoData on Job and Worker models. repoData was a simple
object with id and slug attributes, which was used to generate url for a
repo. That way I didn't have to instantiate Repo object for generating
urls. The problem is that our API does not return repositorySlug along
with Job record, so the value of repositorySlug was overwritten and in
consequence repoData was becoming empty.

I could change the API, but I feel that the whole repoData concept is
flawed. A bit better solution is to load incomplete repository data into
the store (just an id and a slug) and then instantiate repo record - as
long as it will not need to provide other fields than an id and a slug,
we will not have to do an ajax request.
Make sure that commit data is always fresh by using #with

Commit data in job and build view is sometimes unbound, make sure it's
refreshed when commit does change.
Fix tests with new Ember version