Using Models to Build an Understanding of Functions