Modelling Computations: A 2-Categorical Framework