Do not reset the caller engine in OperationCaller assignment

Use case:
    RTT::OperationCaller<bool()> op("bar", this->engine());
    op = this->getPeer("foo")->getOperation("bar");
    assert(op.mcaller);

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
Revert "extras/slaveactivity: fix potential segfault if no master activity is set"

This reverts commit e1559a65b19cca6a695f33f9c51a4268ac8c864b.
Revert "SlaveActivity"

This reverts commit ed1d5f3f35221c3cb412fb1f002e5a3ede34055b.
ExecutionEngine: forward incoming messages to a master ExecutionEngine if set

The master ExecutionEngine is set automatically if the engine runs in a SlaveActivity whose master activity also runs an ExecutionEngine.

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
Fixed setting of the master engine when assigning a SlaveActivity to an ExecutionEngine

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
tests: added slave_test to test operation calls between components running in a SlaveActivity

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
ExecutionEngine: do not forward waitForMessagesInternal() and waitAndProcessMessages() calls to master engine

waitForMessagesInternal() is also used by waitForFunctions() and thus would wait for the wrong condition variable.
Forwarding waitForMessages() to the master should be sufficient for processing operations in slave engines.

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
ExecutionEngine: moved message forwarding to master to the top of ExecutionEngine::process()

The forwarding does not require that the slave engine has an activity.

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
Merge branch 'pu-fix-blocking-sm-calls' into next