Added tool to allow translation tool updated divs to be rendered correctly.

Summary:
Crowdin's Just In Place Translations (jipt) tool, updates the contents of
the div's themselves.  This changeset creates a registry of
div -> react component. We also set up an observer to watch for when the
div changes by jipt.  When that happens we set the contents of the div
back to what React expected it would be, so that it doesn't throw an
Invariant Violation and then we update the component so that it rerenders
the new translation.

Test Plan:
make build
copy perseus.js over to webapp.
set up host file &nginx to accept translate.khanacademy.dev
Go to: http://translate.khanacademy.dev/math/trigonometry/functions_and_graphs/function_introduction/e/functions_1
Login to crowdin and select Portugese (Brazilian) as the language.
Hover over the perseus text and click the edit icon that pops up.
Modify the translation and notice that the question gets rerendered correctly
as you type.

Reviewers: jack, alpert

Reviewed By: alpert

CC: csilvers, alpert

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