adding new FileReader class and Reader interface
constructor must be inline