create build/ if missing, and clean when calling clean target