Call a configurable `wait_callback` in between dbsqlsend and dbsqlok -
this is a good place to do something like a gevent.sleep() because this
is after we've sent the query to the server and before we've received
the result
Add pymssql_gevent_test.py
Pass socket read file descriptor to wait_callback by using dbiordesc
function from FreeTDS. This allows the wait_callback to do
gevent.socket.wait_read and makes things much greener.
Add test for green query with gevent
Fix failing tests - add gevent dep
tests/test_green.py: Run tests for pymssql.execute and
_mssql.execute_query
Add test for green execution of stored procs with callproc
Add greening to _mssql.MSSQLStoredProcedure.execute()

This makes callproc green.
_mssql.pyx: Refactor greening code, green __init__

Greened the execution of connection-property-setting SQL code in
MSSQLConnection.__init__ and then refactored to reduce duplication.
test_green.py: Add some print statements
Rewrite Cursor.fetchall - less code duplication
Rework row fetching across the module

Whilst checking the performance implications of #158 it was noted that
there was a rather large amount of type conversion occuring when
fetching a row from pymssql. The number of conversions required have
been cut down significantly with these changes.

For a tuple row it is changed from:

tuple -> dict -> dict -> tuple to tuple

And for a dictionary:

tuple -> dict -> dict to dict -> dict

The additional dict->dict conversion could be dropped with either
additional arguments being passed to _mssql so it doesn't add the
positional mappings to the dictionary. I didn't want to break the _mssql
module just incase.
fix foolish issue not adding a row format to the connection __iter__
Add test_no_results_with_connection_as_dict
pymssql.pyx: Check self.description not

before looking at column names

Prevents errors or crashes when as_dict=True and executing queries with
no results like CREATE TABLE, INSERT, etc.
docs: faq.rst: Remove 1.x, Windows-specific entries.
Merge pull request #168 from pymssql/as_dict_No_column_name_raise_exception2

pymssql.pyx: Check self.description not None before looking at column names
rough draft of Shared Introduction
Merge pull request #170 from ramiro/remove-1.x-win-faq-entries

docs: faq.rst: Remove 1.x, Windows-specific entries.
test_threaded.py: Remove unnecessary imports