redesign system to use make