- refactor
- do not try to compile parts of the code using gcc < 4.2 (produces internal compiler error)