Adding Unit Tests and Functional Tests

The functional tests so far are testing the retrieval
of data from the underlying system and ensures the structure
of the data. It does not however validate the content.
It ensures that the messages sent over the VirtIO Serial
channel have the format defined.
If we change the format it will break the unit tests.

Additionally a check for the unicode filtering.

Change-Id: I4c1d740c948e33aed8a04a1013b22276cf7d85e3
Signed-off-by: Vinzenz Feenstra <vfeenstr@redhat.com>