Limit the memory usage of the translation unit cache.

Fixes issue #4.

Just to note, there is a fair bit of memory usage outside of the translation unit cache. In my test with the cache limited to 500MB, the memory usage of `clang-tags-server` ended up growing to around 700MB while indexing.