added unnecessary targets
added "exec"
moved nasm to tools, added yasm
added new function