Instead of storing the size, lets compute it via a traversal
Added all the questions and requirements
Fixed typo
Add a recursive helper for size