added more infrastructure around calculator