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
Implement small http client for tests

Instead of an HTTP module, use an http client that can be instantiated
once per test and uses requests' sessions. This reduces the code needed
for tests and centralizes the serialization process.

Implements blueprint: refactor-system-tests

Change-Id: I96ec90afb18e3fd0249bc323c85fb216c5878d4d
Move functional tests into wsgi/v1

As per previous discussions and decisions, functional tests should
respect a $transport/$version structure. This patch moves existing tests
under wsgi/v1.

Implements blueprint: refactor-system-tests

Change-Id: I2ffae134fdc42af92c6791ce6cf3600e61096683
Use format instead of % for string formatting

As part of keeping Marconi forward compatible, this change replaces
the usage of % for string formatting with .format.

Change-Id: Ie2b1c95f4527339953aa57cceb9b39b0988bef26