Incorporated remove() functionality (for complete tree) and tree balancing