issue with pickle in GitHubSession

```requests``` ```Session``` has [custom serialization](https://github.com/kennethreitz/requests/blob/master/requests/sessions.py#L664-L676), so ```GitHubSession``` must add it's attributes to ```__attrs__``` for proper serialization.

```python
In [1]: from github3 import GitHub

In [2]: gh = GitHub()

In [3]: gh.session.base_url
Out[3]: 'https://api.github.com'

In [4]: import cPickle as pickle

In [5]: dumped = pickle.dumps(gh)

In [6]: loaded = pickle.loads(dumped)

In [7]: loaded.session.base_url
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-7-c94de0900f9d> in <module>()
----> 1 loaded.session.base_url

AttributeError: 'GitHubSession' object has no attribute 'base_url'
```
This would be better done around L22 as:

```python
class GitHubSession(requests.Session):
    auth = None
    __attrs__ = requests.Session.__attrs__ + ['base_url', 'two_factor_auth_cb']
```

The way you're currently doing it will modify the class level value and append those strings every-time a new `GitHubSession` is created.

It would also be great if there were a test for this. Preferably in `tests/unit/test_github_sesion.py` (I think that's the right filename).