eliminate cruft
introduce logger trait
use logger
tweak to write up