use pangoxft instead of pangox and a little refactoring