ready for change the Reader with share pointer
ready to replace ifstream with posix read
Fix Reader read file bug. It must call fail() function after each reading from file