-some refactoring and unit tests
-File sources added to read buffered as string and buffered as byte[]