Documented exit on no change functionality.
Added documentation and refactored.
Added begin/rescue clauses to all file interaction.
Refactoring, pass one.