Logger: add addMessage() and printTotalTime()
Improve boundary code (save ~200 ms)