Tyler Breland: Triangle Facts Solution

As an aside, I couldn't figure out a good way to abstract it. Being implicit about the angles, might not be that extensible, but, this is a triangle after all. That said, I do agree that it isn't dry. I still think it could be abstracted, so I might try and generate the angles in a loop, or just revert to the original implementation as you suggested.