In a bowl, combine chicken with the ingredients for the chicken marinade. Place into the refrigerator overnight. Heat oil in a large skillet medium-high heat. Add chicken pieces and sauté until cooked. Set aside. Melt the butter in the same pan. Cook the onions until soft. Add garlic and ginger, then add garam masala, cumin, and turmeric. Pour in the tomato puree. Cook for a few minutes. Stir the cream and sugar. Add the chicken back into the pan and cook until the sauce is thick.Garnish with cilantro and limes. Serve with white rice and Naan bread.