Add `EmberCPM.Macros.join`

Add `EmberCPM.Macros.join`

`EmberCPM.Macros.join` joins the result of each dependent property into a
single string, with the supplied separator.  This is analogous to
JavaScript's Array.join, which is used inside the implementation.

Example:

```javascript
person = Ember.Object.create({
  firstName: 'Jean-Luc',
  lastName:  'Picard',
  fullName:  Ember.computed.join('firstName', 'lastName', ' ')
});
```

Note, this is very similar to
https://github.com/emberjs/ember.js/pull/3032 however I have moved
the separator argument to the end to be more consistent with EmberCPM.