Renaming growth_chance to grow_chance
Refactoring update_size() into evaluate()
Major refactor of ramped half-and-half population initialization

Oh boy, this was crazy broken because I'm a moron (sometimes). Instead
of choosing full or grow once per Individual, I was choosing it inside
my recursive Node constructor, which obviously does not work. The
delegates made things worse. Refactored based off *A Field Guide to
Genetic Programming*, page 14. One constructor, given a method (full or
grow) now properly creates the desired tree.
Handling return of root node for visit() / operator[] methods