Refactoring of the Asynchronous Reader

This factors out the Asynchronous Reader used in the new TBB backend to make it usable for the upcoming `swissknife scrub` tool. Additionally it adds some unittests targeted to the Asynchronous Reader.

**Note:** this contains [Add Unittests for new components](https://github.com/cvmfs/cvmfs/pull/230)
**Note:** this contains [Integrate the TBB based file processing into the Spooler](https://github.com/cvmfs/cvmfs/pull/220)
**Note:** this contains [New File Processing Pipeline based on TBB](https://github.com/cvmfs/cvmfs/pull/219)
**Note:** this contains [Add a Buffer template to util.h](https://github.com/cvmfs/cvmfs/pull/218)