simple but powerful make system