Review Fixes: Squashed all minor commits related to review comments.
Note: Not yet fixed the following:

1. Convert handle_all_sent_request.get_docs_to_send to an inline code.
2. Check if last doc received from source was successfully inserted
before sending docs changed at target to source.

Removed blank line from import statement.

Renamed instance variables to make them private in SyncResource.

Fixed documentation by increasing clarity.

Added todo to remove ensure in the long run from instantiate_requirements.

Fixed minor typos.

Optimized creation of docs_by_gen.

Added irc logs as comments instead of pointing to the url.

Moved out u1db trunk files into project root. Now using u1db.remote for unchanged u1db source. Chagned source will now extend the default u1db implementation and live in zmq_transport.u1db

Forgot to add u1db.backends

Added helper utility to access private variable _db in SyncExchange extension at zmq_transport.u1db.sync

Added todo about doing some logging after application tier has sent a message.

Added return_list decorator. It typecasts the return value of the function being decorated to a list. Used this to typecast return values of message handlers to a list. Used decorator as it feels more agile and beautiful. Note: Learned decorators today. Will use everywhere possible from now on. But with good judgement. :P

Renamed _prepare_u1db_aciton to _prepare_u1db_sync_resource. Name feels more related.

Renamed instantiate_requirements to prepare_for_sync_exchange. Again, name feels more related to the task it is doing. :)

Fixed minor bug in handle_put_sync_info_request. Param db was wrongly set.

Removed redundant find_changes_to_return operation in return_changed_docs. This is already force done during the PING-ACK.

Added doc_rev to SendDocumentRequest. Modified tests accordingly.