makefile should also delete cabal generated files on cleanup so they could be used interchangably. ensure that all generated files are ignored as recommended by bese practices.