Revert "applying performance improvements after micro benchmarking"

This reverts commit 8ca5fa24ede5b8508fd9c80193e3b574b0dbff3d.
Revert "merging interface CharInputReader and abstract class AbstractCharInputReader."

This reverts commit 2ddebd7757ed7270121cf4e84d308f510d3b4649.
applying performance improvements after micro benchmarks