Implements a new factory for generics
+ improve file system