break ruby2 FileImpl into separate class