call() to accept serialize and force_envelope

The serialize and force_envelope options were
being stripped from call().

Now, when call() is invoked, these options
are passed and respected.

Change-Id: I69355606b06ab2ec87765fe6ddba7baaa68e5754
reusable ZmqProxy service initialization

Move near-identical proxy setup code
from oslo-zmq-receiver and test_zmq
into ZmqProxy's consume_in_thread method

Provides code reuse and simplifies the
tests and receiver binary.

Change-Id: I1324eacfa2a456599d5fd462b6476ddf659e95c4
Add missing parameter to impl_fake notify function.

The envelope was missing.

Change-Id: I3ab8f573e6c5020bd564ad78de29e6c285695f2c
Implement importutils.try_import.

Adds a new (simple) importutils.try_import function which
can return a module name or a default (by default this is None).

This should help clean up some of our

try:
    import foo
except...

blocks in modules.

This commit also drops the dependency on python-extras which is
no longer needed.

Fixes LP Bug #1099501.

Change-Id: I8591f79983bdad67a50d1aaae6dce8428dfce084
Merge "call() to accept serialize and force_envelope"
Merge "reusable ZmqProxy service initialization"
Merge "Implement importutils.try_import."
Merge "Add missing parameter to impl_fake notify function."