fixed data truncation problem
prevent panics being passed

It's preferable for Go packages to report problems as errors
rather than as panics. (I was regularly getting panics due to
some funky (bad) code I'd written in a calling program).

See pp215-216 of Summerfield "Programming in Go".
Stringer for SnmpVersion - make usage/debug easier
make Conn public, so can do deferred Close() from caller
actually _return_ error on recover