Implementing isCompleteTree method:

By using a level-order tree traversal algorithm, the method is going
level by level deeper into the tree trying to find a
node which is not full(doesn't have both children). When such a node is
found it means one of the following:
a)All the nodes that follow are leaves and current node has either no
children or only left child thus proving that this is indeed a complete
tree.
b)One of the logical conditions in a) is not true which means the tree
is not complete.

In order to do that I had to first implement the level order algorithm
which uses a queue data structure to hold nodes on the same level which
need to be processed.

So this entire commit consist of the following:
1) Entire new queue data structure used to implement level order tree
traversal
2) isCompleteTree method which uses the above described algorithm to
check if a tree is complete

The code stil has a bugg or two which I need to solve.