Added angle subwidget/tool to Interactive Graph widget.

Summary:
Vertex snaps to grid as usual, but rays snap to whole degree orientations
relative to the vertex. This remains the case even when dragging the whole
angle.

Two validation options: Exact match and congruent (i.e. same angle measure).
Can snap to 1, 5, or 10 degree increments.

Also added right angle indicators to the Polygon subwidget in preparation
for showing angle and side measures.

Test Plan:
Tested both validation options under various combinations of angles, made
sure that correct JSON is stored when using this subwidget.

Reviewers: jack, eater

Reviewed By: jack

CC: alpert

Differential Revision: http://phabricator.khanacademy.org/D4395