ENH/API: allow customization of requests thru opener
closes #4927

@jreback @jtratner Is this _really_ necessary? @alefnula has a nice solution to the problem using `requests`: http://stackoverflow.com/a/18939272/564538.
 can requests be added as an included library in pandas? 
 it's still seeing active development ... i'm really hesitant to start using submodules
 That seems like a better solution. So it becomes a dep for read_html?
 Hold on, the SO solution is even simpler - if you want your own headers or anything else, pass in a file-like/data:

```
tables = pd.read_html(requests.get(url,
                                   headers={'User-agent': 'Mozilla/5.0'}).text,
                      attrs={"class":"tabelle_grafik"})[0]
```

Why write a lot of code to handle what other libraries can do easily for us?  We can't hope to cover every case anyways.
 I think @hayd wanted to use it unstead of urllib in general

I guess not that big if a deal to add it
 @jtratner Exactly my point ... users should just pass their own data in if necessary and wrap it in a try suite to fallback if a server can't handle some part of the request ... we can't handle _everything_
 so just show in cookbook then! (or an example)
 @cpcloud okay, then we should just close this and mark the other as wontfix - users should just do it themselves. Conversion of html --> NDFrame is in scope for pandas, getting data (outside of straightforward url), not so much.
 yep. great. i'll add a cookbook entry
