Use temporary file system
Fix & enhance unit tests