return errors instead of panicing
String output, err, and doc updates. Other tweaks.

* renamed TypeCategory to Format and made format calculated upon decoding
  rather than repeatedly for every format call

* unexport BadTypecastErr -> wrongFmtErr

* Change String method to just return the string value - and don't have
  square brackets if only a single value

* add separate Int and Int64 retrieval methods

* update docs
fix mknote StringVal call
Sync regression test cases with tiff.Tag.String()

Regression test case regeneration would lead to failing tests, as
produced string no longer matched expected string.
removed explicit panics in favor of error returns.