Feature: CatalogTraversal can have a Timestamp Threshold

This enables the `CatalogTraversal` to stop traversing if a catalog is older than a given timestamp. In this case, the catalog is marked as pruned and will be traversed by `CatalogTraversal::TraversePruned()`. This is a necessary feature for the time based garbage collection.

Furthermore this adds more tests to `T_CatalogTraversal`, to check the functionality of the timestamp threshold based traversal. However, the combinatorics of the configurability of the `CatalogTraversal` class makes me start to worry. :o)

**Note:** Based on [Feature: Garbage Collection](https://github.com/cvmfs/cvmfs/pull/605),  [Feature: Server Integration of the Garbage Collection](https://github.com/cvmfs/cvmfs/pull/606), [Feature: Add a MockHistory in the Unit Test Suite](https://github.com/cvmfs/cvmfs/pull/607) and [Fix: Garbage Collection Code Base](https://github.com/cvmfs/cvmfs/pull/608).