#20 Broke out "Result" into its own class.