code cleanup: - reduced the big switch statement and moved the relevant data   into a static structure - consistent variable checking - probably some subtile changes in the error handling
code cleanup:
- reduced the big switch statement and moved the relevant data
  into a static structure
- consistent variable checking
- probably some subtile changes in the error handling

pestophagous/unofficial_scratchpad_git-cvsimport_libexif,pestophagous/unofficial_scratchpad_git-cvsimport_libexif,pestophagous/unofficial_scratchpad_git-cvsimport_libexif