[RFC] Add debugging submodule for bug reporters

The suggested usage in a bug report would be

    python -c 'from requests import _bug; _bug.print_information()'

This should generate most of the information we tend to ask for
repeatedly from bug reporters.

----

**Note** This is merely a POC and an idea I had this morning. I've done similar things in other projects with varying success. Most of the success will ride on us adding a `.github` folder with an issue template. This just makes the bug report process easier for users.

# [Codecov](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=h1) Report
> Merging [#3937](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=desc) into [master](https://codecov.io/gh/kennethreitz/requests/commit/a44284c045b43d728c2a07d4f0a064bf8714f4af?src=pr&el=desc) will **decrease** coverage by `1.97%`.
> The diff coverage is `0%`.

[![Impacted file tree graph](https://codecov.io/gh/kennethreitz/requests/pull/3937/graphs/tree.svg?token=mZGswIiXLa&src=pr&height=150&width=650)](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master    #3937      +/-   ##
==========================================
- Coverage   89.73%   87.75%   -1.98%     
==========================================
  Files          17       16       -1     
  Lines        1978     1985       +7     
==========================================
- Hits         1775     1742      -33     
- Misses        203      243      +40
```


| [Impacted Files](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [requests/\_bug.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvX2J1Zy5weQ==) | `0% <0%> (ø)` | |
| [requests/utils.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvdXRpbHMucHk=) | `85.02% <0%> (-1.23%)` | :arrow_down: |
| [requests/sessions.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvc2Vzc2lvbnMucHk=) | `92.93% <0%> (-1.17%)` | :arrow_down: |
| [requests/models.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvbW9kZWxzLnB5) | `93.42% <0%> (-0.22%)` | :arrow_down: |
| [requests/adapters.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvYWRhcHRlcnMucHk=) | `92.82% <0%> (-0.11%)` | :arrow_down: |
| [requests/structures.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvc3RydWN0dXJlcy5weQ==) | `100% <0%> (ø)` | :arrow_up: |
| [requests/compat.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvY29tcGF0LnB5) | `100% <0%> (ø)` | :arrow_up: |
| [tests/testserver/\_\_init\_\_.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-dGVzdHMvdGVzdHNlcnZlci9fX2luaXRfXy5weQ==) | | |
| [requests/packages.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvcGFja2FnZXMucHk=) | | |
| [requests/\_\_version\_\_.py](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree#diff-cmVxdWVzdHMvX192ZXJzaW9uX18ucHk=) | | |
| ... and [5 more](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=tree-more) | |

------

[Continue to review full report at Codecov](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=footer). Last update [a44284c...f180980](https://codecov.io/gh/kennethreitz/requests/pull/3937?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).


This also (obviously) needs tests. I just want Kenneth's opinion on it before progressing. I'm also completely open to renaming the public interfaces to the function =P I am not emotionally attached to them here.

Love the concept. I'd just tweak the module name a bit. I like `requests.report` or `requests.bugtrap` or something. 

merged this into the "help" branch, with some changes