add makefile, improve coverage