Refactor sorter to work on touch devices

Summary:
Sorter now works similarly to Orderer, handling touch and mouse events appropriately. Both
widgets now use the same extractPointLocation function, which has been moved to Util.

Test Plan:
- Run Perseus (`make server`).
- Go to this [example](http://localhost:9000/test.html#content=%7B%22question%22%3A%7B%22content%22%3A%22%5B%5B%E2%98%83%20sorter%201%5D%5D%22%2C%22images%22%3A%7B%7D%2C%22widgets%22%3A%7B%22sorter%201%22%3A%7B%22type%22%3A%22sorter%22%2C%22graded%22%3Atrue%2C%22options%22%3A%7B%22correct%22%3A%5B%22%24x%24%22%2C%22%24y%24%22%2C%22%24z%24%22%5D%2C%22layout%22%3A%22horizontal%22%2C%22padding%22%3Atrue%7D%7D%7D%7D%2C%22answerArea%22%3A%7B%22type%22%3A%22multiple%22%2C%22options%22%3A%7B%22content%22%3A%22%22%2C%22images%22%3A%7B%7D%2C%22widgets%22%3A%7B%7D%7D%2C%22calculator%22%3Afalse%7D%2C%22hints%22%3A%5B%5D%7D).
- Turn on iPad (or iPhone, etc.) emulation in the Developer Tools console; works as expected.
- Also tested on a real (!!) iPad and iPhone.

Reviewers: jack

Reviewed By: jack

Subscribers: alpert, eater

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