This package has been mostly done by Armin Rigo with help from
Maciej Fijałkowski.