front: Match touch mask colors only if they fall within a tolerance.

Along with commit f99a8b9a98aef094bbc89fd05d5fa3a5ab3bad3a, this
resolves Issue #385.
front: Make CheatFile fields final to eliminate null check.
front: Simplify CheatFile interface, only permit reload.

Allowing the user to reload a different cheat file with the same objects
seems unnecessary and a potential source of bugs.  Just permit reloading
the original file to revert any unsaved changes.
front: Simplify cheat merge algorithm a bit.

- Use iterator rather than array conversion
- Use get() rather than match()
- No need to clear the volatile section and refill it with the default
  section since we already copied the default file at the beginning
- cheat_section_d will always be null where it was referenced, so just
  remove it
- Only need to save once, at the end
front: Fix potential memory leak in ConfigFile/CheatFile.

Use finally clause to ensure file writer is closed properly.
cleanup: Move things around for readability in ConfigFile/CheatFile.
cleanup: Remove unused method and touch-up whitespace.
cleanup: Make CheatSection.nextCrc private.

It's an implementation detail that does not need to be exposed.