I think this is a side effect of mixing your module loader systems.  `ember-qunit` is not really an ES6 module when the page loads, but it's imported like one and your sort of magically depending on the fact that when it's all transpiled to amd that import is becoming a `require('ember-qunit')` call.

You could maybe do a relative import path to the actual vendor file in `'../vendor/ember-qunit/lib/main'` but then your `import from 'ember'` is gonna fail so you have to do it all the way down.

At Sprout we handle vendor files that are not ES6 modules a little differently, we basically rely on them being on the page before hand (usually concatenated into a single vendors.js file) and then write an ES6 shimming vendor/libraries file:

```js
/* File: script/vendor/libraries.js */

// Just in case something wants to pass in a custom globals val
var globals = globals || window;

export var jQuery = globals.jQuery;
export var $ = globals.jQuery;
export var underscore = globals._;
export var lodash = globals._;
export var _ = globals._;
export var Backbone = globals.Backbone;
export var icanhaz = globals.ich;
export var ich = globals.ich;
export var cconsole = globals.cconsole;
export var Modernizr = globals.Modernizr;
export var WallTime = globals.WallTime;
export var TwitterCldr = globals.TwitterCldr;
export var twttr = globals.twttr;
export var Hogan = globals.Hogan;
```

Then from other files we import with:

```js
import { _, Backbone } from 'vendor/libraries';
```

Of course, you could always write individual shims per library sort of like requirejs makes it easy to do.  At any rate, this lets us have a single flexibility point and keep our module "philosophy" coherent and staying in ES6 land.  I think it would be nice to have a native shimming capability in ES6, I might bring it up on esdiscuss.