Refactor: make src directory and move *.cpp and *.h
Change return label when source data is empty
Add MAX_READ_SIZE = 12288 (= 4096 * 3, choosed ad-hoc)
Add: interface for C language
Refactor: file names