#168 factor out private function, move private functions and nested types after constructor
#168 factor out private function, move private functions and nested types after constructor

phetsims/sun,phetsims/sun,phetsims/sun