Make Synchronous & Asynchronous clients work correctly for 'forms'

Fixes #26 

For `form`s, Make a `multipart/form-data` type request if `files` present in the request., else `application/x-www-form-urlencoded` type request

'requests' handles it cleanly for Synchronous clients by expecting 'files' and 'data' entries in request params.

For Asynchronous clients, content body and the corresponding headers had to be generated in the swaggerpy code itself.
```
tox
.................................................................................................................
----------------------------------------------------------------------
Ran 113 tests in 0.697s

OK
py27 inst-nodeps: /nail/home/prateek/pg/swagger-py/.tox/dist/swaggerpy-0.4.0.zip
py27 runtests: commands[0] | nosetests
.................................................................................................................
----------------------------------------------------------------------
Ran 113 tests in 0.670s

OK
flake8 inst-nodeps: /nail/home/prateek/pg/swagger-py/.tox/dist/swaggerpy-0.4.0.zip
flake8 runtests: commands[0] | flake8 swaggerpy
flake8 runtests: commands[1] | flake8 swaggerpy_test
___________________________________________________________ summary ____________________________________________________________
  py26: commands succeeded
  py27: commands succeeded
  flake8: commands succeeded
  congratulations :)
```
elif headers.get('content-type') ...