Analytical logging for incoming task requests

Wrote a new method to analyze incoming task requests.  This
analytical data can be found in the header of each request and
can be useful for debugging task queues and monitoring performance.
Created test files for _log_task_info

Things this tests for.
- all the expected headers are found
- none of the expected headers are found
- expected headers are found while ignoring unrealated headers
Added missing comment to handler test
Updated arguments on logging debug
Made a stylistic change with arguments for logging debug.
Then updated tests to handle this change in expected arguments.
Flake8 style update for test__init.py
Log_task_info outputs more useful data

Made changes to the headers we are logging in tasks
requests. We found queuename and taskname were redundantent.
We also found we should log the time that the request was made.
Updated log_task_info tests to fit new spec

This includes all the changes in values we are logging.
Add deadline kwarg to MessageIterator

Add deadline kwarg to MessageIterator which is then passed into the
lease_tasks_by_tag call.
Add tests for lease deadline
Add time check to lease call

This is ugly and hacky and I don't know how to test this.

PROBLEM:
Occasionally the lease task will run right up to it's deadline (within
1/10 sec) and then return an empty list when there ARE tasks in the
queue. This seems to happen when there is a lot of read/write contention
on the queue.

HACKY SOLUTION:
Check the length of the call and we're within that deadline window and
we get an empty list, then raise a TransientError (which also is a sign
of queue contention issues).

POTENTIAL AVENUES OF INVESTIGATION:
See if this problem happens when leasing asynchronously.
Complain to google to throw a DeadLineExceededError (which I've NEVER
seen in this context)
Sit in a corner and cry.
Fix a test and flip a condition
Add deadline to docstring
Merge branch 'lease_deadline' into time_check
Merge pull request #95 from tannermiller-wf/lease_deadline

Lease deadline
Merge pull request #94 from robertsheehy-wf/logging-task-info

Analytical logging for incoming task requests
Change exception to DeadlineExceededError
Add test for time_check
Add the ability to start async transactionally
Merge pull request #98 from johnlockwood-wf/transactional_async_tasks

Add the ability to start async transactionally
Track the number of insert success and failures on Context.

This adds two new properties to Context which tracks the
number of tasks that were successfully inserted and tasks
that failed to be inserted.