code factorization, installation: make, make install