Implement embedded marconi-server execution

This patch embeds a marconi-server as part of functional tests in order
to be able to run them when there's not an up-and-running marconi-server
instance. This is the default behavior, however, it is possible to run
this tests against a remote marconi-server by setting `run_server =
False` in functional-tests.conf and setting the correct marconi-server
url and version.

Implements blueprint: refactor-system-tests

Change-Id: I6795092b2110a02808eac0117979ee1a9a5f9ee2