Issue #40: using structs as function return arguments; making them internal