Implement IDisposable down the chain.

Ensure proper cleanup everywhere.
Fix up dispose on TTS

New nugets to push