fixed cleanPath bug in tar library FS#2802

This time the test case was correct and actually showed a bug in the tar
library. The error occured only on the first build (directory build/0/)
where the zero was stripped from the path name.

I added unit tests to the cleanPath function and discovered another bug
with handling relative directories. I rewrote the cleanPath() function
and now it should finally work.

Unit tests FTW!