~ Refactor the run function.
+ Add travis config.