Use hierarchical names for unittest (needs tests)

See https://github.com/JetBrains/teamcity-python/issues/24

Instead of using `str` to get the name of a test, the unittestpy test runner should use `id()` to obtain the test name. This ensures that TeamCity is able to understand the hierarchy of the tests.

Including the description with the test (which is done currently) may however be undesirable, as the test description could change while the method signature could remain the same.