Add version option.
Refactor some code.
Add a message on cancelation.
Update readme.