replace SizedStack with TailBuffer, that does not create a char object for every character read form input
 add some basic TailBuffer coverage + fix buffer size
remove unused SizedStack and tidy up unused imports
Added a comment so people can see where this code originally came from.
Merge pull request #851 from BladeRunnerJS/perf-stripping-readers-tailbuffer

Peformance enhancement: replace SizedStack with TailBuffer