Simplify `MessageForwarding` entity

So far, `Messageforwarding` has been a trait that requires a
`ExchangeInfo` and a `MessageGateway` provided by its children. It
is used by actors collaborating in the exchange to simplify the
message forwarding.

There is no good reason to use inheritance there. As there is no
good reason to couple the message forwarding to the `ExchangeInfo`
object.

This change turns the trait into a regular class, which receives
the counterpart and the broker connections from its constructor. Now
`MessageForwarding` can be used by composition rather than inheritance.
Add Graphviz directory in doc/ with an initial actor supervision graph
Merge pull request #170 from apoloval/doc/graphviz

Add Graphviz directory in doc/ with an initial actor supervision graph
Merge pull request #169 from apoloval/task/39

Simplify `MessageForwarding` entity
Merge pull request #171 from sortega/task/40_wizard_steps

Implement PasswordStepPane
Add execution context for updating ScalaFX nodes
Add CredentialsTester trait
Implement OKPayCredentialsStepPane