make it more modular to integrate with mutant easier

* split into files
* no more global stats
* rename stats to stat
* introduce expect to avoid monkey patching
* remember all the tests and only run in Executor.execute
no longer only 250 lines of code ><
avoid extra Time.now
merge imp into executor
rename report_at_exit to autorun
require 'pork/ext' in pork/auto instead
extract pork/inspect
cleanup Executor
avoid pollute namespace
slightly change the name
use thread group to properly pass stat along the way
since now we pass stat along the way, no need to merge stats
bump gemspec and travis
protect after hook
now it's not just pork.rb
Pork.autorun(false) to disable autorun
still got Neutral failure with this. dunno why? no tests were loaded
only stat is needed for expect
print in executor instead of stat
pass the io along, default to $stdout