All Equal (=== comparison)

```js
  var MyType = Ember.Object.extend({
    d: EmberCPM.Macros.allEqual('a', 'c'), // a === c --> 6 === 2 = false
    e: EmberCPM.Macros.allEqual('a', 'b'), // a === b --> 6 === 6 = true
    f: EmberCPM.Macros.allEqual(), // true
    g: EmberCPM.Macros.allEqual('a'), // true
    h: EmberCPM.Macros.allEqual('a', 'c', 6), // a === c === 6 = true
    i: EmberCPM.Macros.allEqual(Ember.computed.alias('a'), 6), // a === 6 = true
    j: EmberCPM.Macros.allEqual(EmberCPM.Macros.sum('a','b'), 8), // (a + b) === 8 = true
  });

  var myObj = MyType.create({
    a: 6,
    b: 2,
    c: 6
  });
```
Supersedes #24, supports composable CPMs
`retainByType` imported but never used

/mode-jshint-off