add valgrind to check memory leaks