buffer: Default to UTF8 in JS rather than C++
This will cause a minor speedup as previously with undefined values we would always cast to a string and then proceed to call .toLowerCase()
First flame-graph is before, second is after; calls to ToLowerCase() are highlighted in purple.
Tests seems to pass, but wanted to make sure that this is a safe change.