Some changes to make goexif more idiomatic Go
style
Change deps
fix funny infinite loop
simpler/better fix than the previous commit
Merge remote branch 'upstream/go1' into go1
change import paths back for upstream
Update README.md
Some tweaks and slight refactoring

The one incompatible change is that the ImageLength field name has
been corrected to ImageHeight.
Add support for reading Nikon and Canon maker notes

Most known fields in Nikon and Canon maker notes are now parsed.
The Canon maker not support still needs a better way of passing the
offset to the maker note in the EXIF file to the maker note parser.
Other makers need to be added.
refactoring gsadams makernote stuff into its own package
added more specific note about image length vs height. Made unknownPrefix exported.
removed valid field check - unnecessary due to custom field loading (LoadDirTags). made unexported field maps specified using constants
go fmt
adds parser registration to exif package. mknote pkg provides canon and nikon makernote parsers. exifstat has mknote flag
Fix crash observed in the wild.
fixed/updated doc comments
adds some basic makernote parsing. All exif data extraction is implemented through the Parse interface. Exposed a bit more of exif/tiff internals to allow this.
Add support for TIFF based images, like CR2.

This adds detection for TIFF images and skips the steps of removing JPEG and
EXIF headers from the data before calling tiff.Decode.
Merge pull request #1 from wathiede/go1

Add support for TIFF based images, like CR2.