BUG/TST: Yahoo Finance (a foundational resolve of GH: #2847,  #2853)
Resolve issues in `pandas.io.data.py` and `test_yahoo.py`.
- BUG: Fixed decode issue in `get_data_yahoo()` for python 3.3 (resolves #2847)
- ENH: Updated `_calc_return_index()` function to properly handle groups of multiple stocks that do not share the first valid price on the same date (i.e., stocks whose IPO's dates exist within the query date range). Ensures that all stock's first values in `ret_index` are set to 1, regardless of actual initial starting date.
- TST: Modify test suite for yahoo finance functions in `test_yahoo.py` to accurately test queries to yahoo finance (resolves #2853/#2847)

Hey @y-p, apologies for the wait on the fix. I'm not sure about my rebase with the branch, let me know if I can address anything!

Thanks!
 You removed the sanity checks, it's better to leave them in place and merely
add to them.

Not sure about removing @slow, because they are in fact slow. 
Better keep test_fast.sh true to it's name.

I believe decode() uses the terminal encoding when no arg is passed in.
That's utf8 on most boxen but not all. notably non-english speaking windows.
So you should specify an encoding, yahoo returns utf8 doesn't it?
 Good tip on the sanity checks. I do like those, and I've already put them back in. 

About the `@slow`, is 6.5 seconds slow for all 4 of the tests in `test_yahoo.py`? I substantially reduced the amount of data being queried in the background and that's the average time they take to complete now.

I believe the encoding is utf8, and I've added this and it seems to run fine, passing with flying colors. 

Let me know about the `@slow` and I'll push the changes in single commit, thanks!
 thanks, cherry-picked, 44b249534ff0c0df237d484cebc5be2d76974dd8 and friends.
 Great, thank you @y-p. Nice commit messages, btw. Helpful to learn from. Oh, and, what was your thoughts about 4 tests in 6.5 seconds? Would like to know for future reference.... Thanks!
 The tests included in `not @slow` average about 20ms each. So by comparison
these are slow.  4 seconds may not be a long time, I just opted for keeping the status-quo.
 Gotcha. Thanks for the info!
