add convenience target
fix linkage errors
refactor module
empty message