Fixes for parsing JSX tokens array

With `tokens` option enabled, esprima-fb returns incorrect array of tokens in `ast.tokens` property in following ways:

1. Duplicate `XJSText` tokens appear due to double-peeking next token into tokens array by both `expect()` in `parseXJSOpeningElement()` and `peek()` in `parseXJSElement()`.
2. Whitespaces in `<Tag> a </Tag>` were ignored and returned as pure `'a'` literal inside of `XJSText` element; this also caused children array of `<Tag> </Tag>` to be empty when `tokens` option was enabled.

Both bugs are fixed and regression test added.

Also:

1. Ignored `node_modules` folder.
2. Added running JSX tests in browser.
3. Changed versions in code to same as in package.json (required for tests).
Kinda seems like it'd be good to have these in all tests, but I'm a little surprised that this passes given that I don't see any indication for the test runner to run with the `tokens` option enabled...?

I see that you added fbtest.js to the browser test runner (thanks for that, btw) but does `npm test` also work?