Throw/warn on JSX without /** @jsx ... */

Fixes #1762.

* Throws error when doesn't know namespace and so can't [unambigously] compile
JSX to JavaScript instead of silently passing code as-is.
* Emits warning for `<script type="text/jsx">` without `/** @jsx ... */`
directive even when it's successfully compiled (pure JavaScript inside).
* Provides locations for syntax errors in JSX transformer (currently leads to
error in `createSourceCodeErrorMessage` since `erroneousLine` is `undefined`).