Feature: Garbage Collection can be Disabled

This adds a configuration flag (`CVMFS_GARBAGE_COLLECTION`) to enable the garbage collection feature. By default, it is disabled and needs to be enabled explicitly. Furthermore this adds a field to the `.cvmfspublished` manifest file to mark a repository as garbage collectable.

The pull request also adapts the garbage collection integration tests and adds one additional integration test to verify that `CVMFS_GARBAGE_COLLECTION` properly disables the feature.
No, at the moment it is only supported on stratum 0, that is totally correct... Anyway, this is the sanity check I was talking about on the way to R2. It's going to go out soon anyway...