Fix: buffer.copy ignores sourceEnd if it's set to 0

At the moment, buffer.copy treats `sourceEnd`=0 as if it's undefined, meaning it gets set to `this.length`. It should just leave the value as 0.