Parser looks for operators before variables

Previously, when an operator and a type had the same name, the parser
would create a variable using the type. Now, the parser creates an
operator expression. This should fix a bug with the "angle" and
"segment" operators; all other types and operators should remain the
same.
Operators and theorems for circle tangent proof

The two new operators are "perpendicular" and "tangent". The two new
theorems are "If the angle between two lines measures 90 degrees, then
the lines are perpendicular." and "If a line is perpendicular to a
radius of a circle, and the circle, radius, and line all intersect at
one point, then the line is tangent to the circle."