organizing formatter; add test for comparison functions
allow to customize message