Designing And Implementing Computational Methods To Study Catalysis