Increase timeout of proposal protocol.

It has been failing a lot during the agency startup when a lot of agents
is initializing.
Cleanup interface of StateMachineMixin.

This is initial work of cleaning up the madness of multiple "mixining"
using each other methods in the base of the agency middle classes.
Big refactoring of the mess in protocol middle classes.

* Join and refactor 3 pseudomixins which where included by all agency mediums.
  Now they form a base class.
* Cleanup deprecated agent method.
* Remove unused periodic protocol.
* Separate expiration calls for timeout-protoceted protocols
  from cleanup() call.
* Remove wildcard imports preventing pyflakes from catching undefined names.
* Rename IAgencyContractor.finalize -> complete. There was a name clush with
  the public method in the base class.
* Allow more than one agent-side jobs at time. Track all the jobs, anc cancel
  them during cleanup.
* Correct tests for contractor/manager mediums.
* Remove unused periodic protocols.
* Move responsability of calling (un)register_protocol and unregistering
  journaling recorders to callers of the initiator/interests factories.
* Make notify_finish() reliable also if called after the protocol has been
  finalized.
* Make sure to cancel all the protocols and interest before terminating
  the agent.
* Remove deprecate wait_for_protocol_finish() call used by tests.
* Cleanly differenciate between ILongRunningProtocol and IAgencyProtocolInternal.

commit e87ee94e74349708bc1853a61791572da9bc3722
Author: Marek Kowalski <kowalski0123@gmail.com>
Date:   Sun Jan 27 19:45:51 2013 +0100

commit a83a8684600057af8528ee7c28136419953df141
Author: Marek Kowalski <kowalski0123@gmail.com>
Date:   Sun Jan 27 19:15:28 2013 +0100

    Refactoring continues.

commit fc6b00567aba2b688d9bf6de364495b16447ce2f
Author: Marek Kowalski <kowalski0123@gmail.com>
Date:   Thu Jan 24 19:43:17 2013 +0100

    wip on refactoring of agency medium classes.