Using quote_name for all field names.

Some fields need this (particularly those with lower and upper case
or those that otherwise would be reserved keywords).

Along the way, connection's using 'using' was normalized to be
consistently used and passed around where it was needed.
Added support for swapped models
Full compatibility with Django 1.6 (tests passing)