Johtaylo/catalog refactor

catalog refactoring