mutter-test: move Test class into package

I decided to split mutter-test script into more files
1) it's better 2) author intended do it later according the comments :)

I created a package muttertest where will be placed classes and helper
functions that do not need be neccessarily (or logically) in
mutter-test.

This patches is the first in series that do abovementioned stuff and
moves base class Test into the package.
mutter-test: move and rename run() function

This function has the same name as Test.run() method and this can be
confusing. Rename it to sys_run and move it into helpers.py source
mutter-test: move exceptions to standalone file

continue packaging
mutter-test: introduce TestRunner class

In order to implement other types of tests in mutter-test (unit,
regression) create a generic class that will contain set of tests and
method for running them (no matter what tests - polymorphism will be
used for decision if it's unit or build test or whatever)
mutter-test: create BuildTestRunner

Create TestRunner for build tests. Consequently, it was neccessary
to change BuildTest and main
Also use testlist.py with tests specification instead of creating
subclass for each test
mutter-test: generate config.py

Use autotools for generating config.py. In this file will be included
autotools variables so the mutter-test can set up appropriate paths
mutter-test: set build path according config.py

Set paths in build tests
mutter-test: add UnitTest

add class for unit tests
mutter-test: add support for running unit tests

Add UnitTestRunner
mutter-test: wrap creating tests from testlist

create function tests_from_dictionary that
reads tests in given dictionary and filters them by user's list
mutter-test: move running tests into parent class

move running tests into TestRunner class and call it from
overriden methods. The code is shorter :)
mutter-test: return non-zero value when test fail

The return value of mutter-test was always 0, even if any test failed.
For 'make check' and other systems that use returned value it's
neccessary to notify failure in exit code