encapsulate the output format
add POSTagFormatter
support POS-tagging and add FormatterFactory