Add custom graphie.sinusoid function for graphing sine and cosine

Summary:
As with graphie.parabola, you can now plot sine and cosine functions in an optimized
manner. In this case, we use SVG Bezier path's support for cubics and approximate each
quarter-period of the sine curve using a cubic. The difference is imperceptible to the human
eye. See D14023 for evidence.

The core logic is in svgSinusoidPath, which proceeds as follows:

- Calculate the quarter-period of the sinusoid.
- Figure out how many quarter-periods it will take to span the graph.
- Find the first translation of sin(0) to the left of the graph.
- Begin plotting quarter-periods by anchoring each cubic at two points on the curve and interpolating in-between.

Test Plan: See D14023.

Reviewers: aria

Reviewed By: aria

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