added a defunctionalisable force function. (so force is in the language)