make logger an interface

make logger an interface

add test, use errLog

revert api change, update documentation

rm unneeded SetLogger
Merge pull request #157 from nikolai-b/master

Make logger an interface