Fix logger formatting
Fix logger formatting

Motivation
----------
Current implementation does not allow to specify any formatting. It
even cannot output log level, because `writeln()` accepts
`varags[string]` and silently ignores everything before last argument.

Modification
------------
Perform formatting in the single place during substitution. Make log
level optional as all other substitution variables. Also make verbose
logging more informative and parseable.

Result
------
Correct handling formatting and substitutions. Machine-friendly default
output of verbose logger.

greyanubis/Nim,reactormonk/nim,Salafit/Nim,fmamud/Nim,JCavallo/Nim,Dhertz/Nim,nimLuckyBull/Nim,singularperturbation/Nim,nanoant/Nim,zachaysan/Nim,JCavallo/Nim,bvssvni/Nim,reactormonk/nim,douglas-larocca/Nim,Senketsu/Nim,tulayang/Nim,jsanjuas/Nim,endragor/Nim,mbaulch/Nim,judofyr/Nim,Dhertz/Nim,msmith491/Nim,sferik/Nim,mbaulch/Nim,jfhg/Nim,jfhg/Nim,xland/Nim,sferik/Nim,nanoant/Nim,russpowers/Nim,nimLuckyBull/Nim,dom96/Nim,greyanubis/Nim,sarvex/Nim-lang,judofyr/Nim,Dhertz/Nim,tmm1/Nim,Salafit/Nim,reactormonk/nim,sarvex/Nim-lang,tulayang/Nim,zachaysan/Nim,jfhg/Nim,xland/Nim,fmamud/Nim,dom96/Nim,tmm1/Nim,fredericksilva/Nim,reactormonk/nim,fredericksilva/Nim,Salafit/Nim,tmm1/Nim,tmm1/Nim,JCavallo/Nim,judofyr/Nim,xland/Nim,sferik/Nim,nimLuckyBull/Nim,haiodo/Nim,reactormonk/nim,fredericksilva/Nim,russpowers/Nim,jfhg/Nim,JCavallo/Nim,Senketsu/Nim,judofyr/Nim,nafsaka/Nim,jsanjuas/Nim,douglas-larocca/Nim,fredericksilva/Nim,bvssvni/Nim,nanoant/Nim,sferik/Nim,haiodo/Nim,nafsaka/Nim,bvssvni/Nim,msmith491/Nim,endragor/Nim,Senketsu/Nim,Salafit/Nim,sarvex/Nim-lang,bvssvni/Nim,tulayang/Nim,haiodo/Nim,sarvex/Nim-lang,dom96/Nim,msmith491/Nim,fmamud/Nim,Salafit/Nim,dom96/Nim,tulayang/Nim,Matt14916/Nim,judofyr/Nim,Matt14916/Nim,singularperturbation/Nim,singularperturbation/Nim,sferik/Nim,douglas-larocca/Nim,Matt14916/Nim,haiodo/Nim,Senketsu/Nim,bvssvni/Nim,jsanjuas/Nim,nafsaka/Nim,Senketsu/Nim,reactormonk/nim,russpowers/Nim,Senketsu/Nim,zachaysan/Nim,douglas-larocca/Nim,zachaysan/Nim,nafsaka/Nim,jsanjuas/Nim,nanoant/Nim,sferik/Nim,douglas-larocca/Nim,jfhg/Nim,douglas-larocca/Nim,fredericksilva/Nim,msmith491/Nim,reactormonk/nim,Dhertz/Nim,dom96/Nim,sferik/Nim,nimLuckyBull/Nim,Senketsu/Nim,Dhertz/Nim,fmamud/Nim,dom96/Nim,tmm1/Nim,msmith491/Nim,endragor/Nim,russpowers/Nim,nanoant/Nim,greyanubis/Nim,fmamud/Nim,sferik/Nim,Matt14916/Nim,JCavallo/Nim,mbaulch/Nim,nafsaka/Nim,mbaulch/Nim,greyanubis/Nim,dom96/Nim,nanoant/Nim,fredericksilva/Nim,judofyr/Nim,xland/Nim,nafsaka/Nim,jsanjuas/Nim,jfhg/Nim,nimLuckyBull/Nim,Dhertz/Nim,Dhertz/Nim,Matt14916/Nim,haiodo/Nim,greyanubis/Nim,endragor/Nim,endragor/Nim,tmm1/Nim,judofyr/Nim,fmamud/Nim,nimLuckyBull/Nim,nanoant/Nim,singularperturbation/Nim,greyanubis/Nim,jfhg/Nim,tulayang/Nim,tmm1/Nim,msmith491/Nim,endragor/Nim,singularperturbation/Nim,mbaulch/Nim,jsanjuas/Nim,russpowers/Nim,xland/Nim,fmamud/Nim,mbaulch/Nim,Salafit/Nim,Matt14916/Nim,fredericksilva/Nim,sarvex/Nim-lang,sarvex/Nim-lang,fredericksilva/Nim,nimLuckyBull/Nim,judofyr/Nim,Matt14916/Nim,xland/Nim,tulayang/Nim,JCavallo/Nim,zachaysan/Nim,JCavallo/Nim,reactormonk/nim,endragor/Nim,russpowers/Nim,msmith491/Nim,greyanubis/Nim,russpowers/Nim,singularperturbation/Nim,jsanjuas/Nim,bvssvni/Nim,douglas-larocca/Nim,nafsaka/Nim,xland/Nim,bvssvni/Nim,douglas-larocca/Nim,haiodo/Nim,singularperturbation/Nim,zachaysan/Nim,haiodo/Nim,sarvex/Nim-lang,Salafit/Nim,mbaulch/Nim,zachaysan/Nim