Triangle facts feature

Adds angles properties to Triangles class.

Attempts to reduce some of the duplication in calculate_angles by creating a law_of_cosines method and positions array.  I can see how the original three lines are more clear, but it was kind of an exercise in DRY?
i'd rewrite this to true unless equilateral || isosceles