Added test for engine, corrected several bugs. Dropped sqrt weights.

I wrote minimal testing for the C engine of tadbit. In the process I found several bugs in the code in particular a segmentation fault when matrices are small or full of 0's, a tiny memory leak, and some uncontrolled threading that caused undefined behavior. Those bugs are fixed and valgrind reports no leak on the minimal test.

I also wrote a helper function `destroy_tadbit_output` to remove the complicated data structure of tadbit.

Running `make` in the src directory should run fine. Running `make` in the src/test directory should run fine if glib2 is available. In this case running `make test` should report OK.