Can you spot the subtle bug that ruined widgets in hints?

Summary:
Summary
When a new widget is added to the hint editor, that widget
was being sent to the hint renderer with no props, crashing
table widgets (among others?), which assumed non-empty
widget editorProps [in the prop transform function].

But why did this work in the question area? It turns out
that because of our non-reactiness of the item-editor,
when the editor is changed it goes through a full
render loop and can query the widget editor's .serialize()
method to get non-empty props for the widget *before*
that widget is rendered, which happens in the item-editor's
componentDidUpdate() [safely after the editor created the
widget editors].

Normally we can't rely on this, so this change makes the
renderer skip widgets with no props instead of crashing on
them. When those widgets are changed in the editor, the
widget editor's .serialize() method will be called to
get the correct props.

Unfortunately, the widgets don't appear instantly, since
when initially created they have no props and are thus
not safe to render yet. This is addressed in the next
diff.

Depends on D13513

Test Plan:
 * Add a "table of values" to a hint
 * Enter something in the table head

Reviewers: alex

Reviewed By: alex

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