Use memory mapped file in courgette_tool

Patch generation and various utilities (disasm) now use memory mapped file
instead of copying into a string buffer. This saves the equivalent of the size of
both |old_file| and |new_file| in memory when generating the patch
(~300Mb with chrome.7z).

BUG=

Review-Url: https://codereview.chromium.org/2143973004
Cr-Commit-Position: refs/heads/master@{#405599}
1 file changed