function changeSong(song, index) {
    var direct = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;

    /*
      Prepare the song change.
    */
    prepareSongChange(song);

    /*
      Change the song.
    */
    _config2.default.audio.src = song.url;
    _config2.default.active_metadata = song;
    _config2.default.active_album = song.album;

    _config2.default.active_index = parseInt(index);

    /*
      Set new information now that the song has changed.
    */
    afterSongChange(direct);
  }
Change song in the songs array.

@access private
@prop {object} song  - The song we are changing to.
@prop {number} index - The index we are changing to.
@prop {boolean} direct - Determines if it was a direct click on the song.
We then don't care if shuffle is on or not.