Kani: A Lightweight and Highly Hackable Framework for Building Language Model Applications