Better diagnostics when trying to send unprepared request

When trying to send unprepared request like

```
import requests

requests.Session().send(requests.Request(url='http://example.com'))
```
one gets rather meaningless error

```
Traceback (most recent call last):
  File "y.py", line 3, in <module>
    requests.Session().send(requests.Request(url='http://example.com'))
  File "c:\python\venvs\sandbox\lib\site-packages\requests\sessions.py", line 374, in send
    r = adapter.send(request, **kwargs)
  File "c:\python\venvs\sandbox\lib\site-packages\requests\adapters.py", line 158, in send
    url = self.request_url(request, proxies)
  File "c:\python\venvs\sandbox\lib\site-packages\requests\adapters.py", line 148, in request_url
    url = request.path_url
AttributeError: 'Request' object has no attribute 'path_url'
```
It would be nice to check if the request is prepared before trying to send and inform user what's wrong if the request is not prepared.