Triangle Facts - 2nd Submission

I made some changes to the code as per Blake's suggestion. Also cleaned up the code bit by simplifying the logic of triangle type identifying functions. Since the function `calculate_angle_from_vertices` is very hard to understand in its earlier implementation, reimplemented it in more self documenting fashion.
I quite like this method / implementation.