Repository: sanic-org/sanic
Issue: Trouble with import conflict in request.py

```
Traceback (most recent call last):
  File "/env/lib/python3.6/site-packages/sanic/__main__.py", line 4, in <module>
    from sanic.log import logger
  File "/env/lib/python3.6/site-packages/sanic/__init__.py", line 1, in <module>
    from sanic.app import Sanic
  File "/env/lib/python3.6/site-packages/sanic/app.py", line 21, in <module>
    from sanic.server import serve, serve_multiple, HttpProtocol, Signal
  File "/env/lib/python3.6/site-packages/sanic/server.py", line 31, in <module>
    from sanic.request import Request
  File "/env/lib/python3.6/site-packages/sanic/request.py", line 6, in <module>
    from http.cookies import SimpleCookie
ModuleNotFoundError: No module named 'http.cookies'; 'http' is not a package
```

It seems it tries to use sanic's `http.py` instead of the builtin Python library. The `http.py` itself is used only twice, in the `response.py` & `exceptions.py`.
Am I missing something and/or have something misconfigured? 


Changed files:
sanic/response.py
sanic/exceptions.py
sanic/http.py

diff --git a/sanic/exceptions.py b/sanic/exceptions.py
index 25dbd47d..e90dff7a 100644
--- a/sanic/exceptions.py
+++ b/sanic/exceptions.py
@@ -1,4 +1,4 @@
-from sanic.http import STATUS_CODES
+from sanic.helpers import STATUS_CODES
 
 TRACEBACK_STYLE = '''
     <style>
diff --git a/sanic/http.py b/sanic/helpers.py
similarity index 100%
rename from sanic/http.py
rename to sanic/helpers.py
diff --git a/sanic/response.py b/sanic/response.py
index f169b4f2..ed1df0f4 100644
--- a/sanic/response.py
+++ b/sanic/response.py
@@ -10,7 +10,7 @@ except BaseException:
 from aiofiles import open as open_async
 from multidict import CIMultiDict
 
-from sanic import http
+from sanic.helpers import STATUS_CODES, has_message_body, remove_entity_headers
 from sanic.cookies import CookieJar
 
 
@@ -103,7 +103,7 @@ class StreamingHTTPResponse(BaseHTTPResponse):
         if self.status is 200:
             status = b'OK'
         else:
-            status = http.STATUS_CODES.get(self.status)
+            status = STATUS_CODES.get(self.status)
 
         return (b'HTTP/%b %d %b\\r\\n'
                 b'%b'
@@ -141,7 +141,7 @@ class HTTPResponse(BaseHTTPResponse):
             timeout_header = b'Keep-Alive: %d\\r\\n' % keep_alive_timeout
 
         body = b''
-        if http.has_message_body(self.status):
+        if has_message_body(self.status):
             body = self.body
             self.headers['Content-Length'] = self.headers.get(
                 'Content-Length', len(self.body))
@@ -150,14 +150,14 @@ class HTTPResponse(BaseHTTPResponse):
                                        'Content-Type', self.content_type)
 
         if self.status in (304, 412):
-            self.headers = http.remove_entity_headers(self.headers)
+            self.headers = remove_entity_headers(self.headers)
 
         headers = self._parse_headers()
 
         if self.status is 200:
             status = b'OK'
         else:
-            status = http.STATUS_CODES.get(self.status, b'UNKNOWN RESPONSE')
+            status = STATUS_CODES.get(self.status, b'UNKNOWN RESPONSE')
 
         return (b'HTTP/%b %d %b\\r\\n'
                 b'Connection: %b\\r\\n'