public vs private functions
A private function can only be used inside of it's parent function
or module. 
A public function can be used inside or outside of it. 
Public functions can call private functions inside them, however,
since they typically share the same scope
