Introduction of TransactionTracer

TransactionTracer is designed to keep track of request metadata and most important metrics that influenced its performance in the most significant way.

@Wikia/platform-team Please review (I recreated the pull request to make a clean start as I added a bunch of changes)

Coming soon (in separate pull requests):
* log key attributes along with profilers data
* log key attributes along with RUM metrics
It probably depends on how the data is being used. Do we care about more accurate counts with multi-byte content? I just noticed that there were other places in the code where we used the `mb_` version.