moving output handling to output plugins
add gemspec for gem