improve GADT and an experimental support for utop
clean