Updates setup.py to allow django 1.6.x
Incompatability with Django 1.6, commit_on_success and sqlite3

Changes to the transaction handling in Django 1.6 resulted in
the ``commit_on_success`` decorating failing with SQLite3.

The `atomic` decorating is used instead when available.
Use context manager for catching warnings in runtests.py

I could never reproduce the DeprecationWarning thrown by Travis, e.g. in
https://travis-ci.org/tangentlabs/django-oscar/jobs/15324179
As far as I understand the warnings module, the previous code to
escalate DeprecationWarnings to exceptions should have had no effect.

With these changes, DeprecationWarnings get thrown correctly *if* used
in a single-threaded environment; both locally and on Travis.
Explicitly exclude DeprecationWarning triggered by sorl-thumbnail

It's triggered when used with Django 1.6. But as it's outside of our
control, we ignore it. It's already fixed in their master branch, so we
should update to the newest version once released.
Merge pull request #1072 from tangentlabs/fix/setup_for_django_1_6

* Updates warnings handling
* Updates transaction handling with SQLite
* Updates Django version range in setup.py