Refactor changelog script and grab PR titles when they're needed
Refactor changelog script and grab PR titles when they're needed

Makes a few improvements to the changelog generation script:
* handles cases where PR-merge commits don't include PR title
  (this led to 'undefined' in the output instead of a title)
* fixes sorting so PRs are ordered correctly, and non-PR-associated
  commits appear after PRs (and are also sorted)
* ensures that a PR will only appear once in the output

stefanpenner/ember.js,elwayman02/ember.js,emberjs/ember.js,elwayman02/ember.js,mixonic/ember.js,sandstrom/ember.js,stefanpenner/ember.js,emberjs/ember.js,emberjs/ember.js,stefanpenner/ember.js,tildeio/ember.js,knownasilya/ember.js,sandstrom/ember.js,mixonic/ember.js,elwayman02/ember.js,sly7-7/ember.js,elwayman02/ember.js,sandstrom/ember.js,tildeio/ember.js,tildeio/ember.js,knownasilya/ember.js,mixonic/ember.js,knownasilya/ember.js,sly7-7/ember.js,sly7-7/ember.js