Catalog Draft

Work in progress for Catalog
Implemented Catalog (#3)

Implementation of Catalog using Concurrent hash maps. I think it's more
efficient than the previous version.