Refactor hunk functionality.
Move logic out of main plugin file.
Add hunk previewing.