Balance tree

These tests are a good start at testing the balancing of your tree, but they are not in any way sufficient.  You'll need to work a bit more to ensure that the shape of your tree is correct after both inserting and deleting under a wide variety of circumstances in order to ensure that your tree is working correctly.  At the moment, it is not and the fact that your tests pass only shows that you haven't yet tested for the right things.