remove unnecessary uses of `call` / `apply`
Merge pull request #3835 from stefanpenner/master

remove unnecessary uses of `call` / `apply`
use @wycats amd micro-loader, which supports relative paths
restore sync assertions. This will hopefully help in failure
scenarios, and prevent aging.

Now that we ship with a default RSVP.on('error', ... ) that raises
awareness, promise swallowed assertions should be no more.
Merge pull request #3831 from stefanpenner/restore-sync-assertions

Restore sync assertions
[FEATURE property action]: Actions can fire property functions

A common pattern I find myself doing is a toggle action to call
toggleProperty to switch a boolean value. It would be nice to not have
to recreate this pattern over and over. Now you can do:

```handlebars
<button {{action toggle=show}}>Show</button>
```

This works on any `xProperty` function on the controller. For example,
`incrementProperty`

```handlebars
<button {{action increment=count}}Add 1</button>
```

It can even work on custom functions defined on the controller that
conform to `xProperty` naming:

```javascript
controller = Ember.Controller.extend({
  doubleProperty: function(property) {
    this.set(property, (this.get(property) || 0) * 2);
  }
});
```

```handlebars
<button {{action double=wins}}>Cheat</button>
```