add temp files to giignore
add basic object pool logic