Drop late responses

Drops late responses by killing of promise subscribers in an attempt to fix issues that arise when objects related to an async request are destroyed before the async request completes.

for comments @igorT 

proposed fix for https://github.com/emberjs/data/issues/1961
You really shouldn't be calling expect() in the timeout. The purpose of expect is to tell qunit how many assertions to expect, so it's usually called as the first thing in the test.