Improved extensibility of LogFormatter

* refactored code separating coloring logic
* allow full line customization of the format
* possibly faster operation