message: only clamp to the context time when the source is not synced
  addresses
diff: @@ -150,8 +150,10 @@ Tone.Source.prototype.start = function(time, offset, duration){
  time = Tone.Transport.seconds;
  } else {
  time = this.toSeconds(time);
  + if (!this._synced){
  time = Math.max(time, this.context.currentTime);
  }
  + }
  //if it's started, stop it and restart it
  if (this._state.getValueAtTime(time) === Tone.State.Started){
  this._state.cancel(time);
  