Understanding and Engineering Social Dynamics