begin refactor
added makefile