Sync latest from Facebook

This is the latest. As of right now the JSX transform code is unchanged, though I know Sebastian is landing something there soon (there's currently a test that "passes" but outputs warnings due to the `key` stuff). We can either merge this in now or wait for that. Either way is fine by me!