principal-agent models in python