Make output modules pluggable #43

Closes #43