Transform type expressions into weak prenex normal form
All type signatures in FlatCurry should be transformed into weak prenex normal form (see https://www.microsoft.com/en-us/research/publication/practical-type-inference-for-arbitrary-rank-types/ for a definition). As a side effect, all type variables would become explicitely quantified. The latter will simplify the translation into Haskell considerably, especially when considering the generation of Curry contexts.