Tools for programming with ConstraintKinds in GHC