Add tree-based type-providers
Update tree generator to recent changes