How to prove a complete binary tree of depth N has $2^{N+1} - 1$ nodes? Here is the description of a proof problem:    

A complete binary tree of depth N is a binary tree in which every node on levels $0,1,2,...,N-1$ is a parent and has two children, and each node on level N is a leaf. 

It's asking for proving binary tree of depth N has $2^{N+1} - 1$ nodes. 

I am not really sure how to approach this proof. I tried to plug in some values in $D(N) = 2^{N+1} - 1$ just to play with the formula, I get $D(1) = 2^{1+1} - 1 = 3$,  $D(2) = 2^{2+1} - 1 = 7$, $D(3) = 2^{3+1} - 1 = 15$, and so on. I still did not see how these numbers relate to the descriptions given and how I would relate these values to given facts to build a proof.
Hint 1: Draw some binary trees of depth $0, 1, 2$ and $3$. Depth $0$ is only the the root. 

Hint 2: Use Induction on the depth of the tree to derive a proof. 

The base case is depth $n=0$. With depth $0$ we only have the root, that is, $2^{0 + 1} - 1 = 1$ nodes, so the formula is valid for $n=0$.  

The next case is depth $n=0+1=1$, since the tree is full the root must have $2$ leafs. So we have $1 + 2 = 3$ nodes in total. The formula still holds since $2^{1+1} - 1 = 3$. 

Can you generalize this procedure? Does this hold for all $n \geq 0$?