Implement proper calculation for prompt and completion tokens.
Include example project for consuming the client.
Reduce coupling by putting types and definitions in their appropriate files. Chat utils for creating prompts and messages have been added.