Make ioErrCount updates go-routine safe (#1943)
Make ioErrCount updates go-routine safe (#1943)

* Make ioErrCount updates go-routine safe

* Made ioErrCount int32 instead of *int32

... and implemented StorageAPI on *posix as opposed to posix type.
This is consistent with the thumb-rule that if a value of a type is
modified as part of the interface implementation then we implement the
interface on pointer to that type.

aead/minio,fwessels/minio,jimjag/minio,dutchcoders/minio,donatello/minio,donatello/minio,vadmeste/minio,brendanashworth/minio,minio/minio,aead/minio,balamurugana/minio,jimjag/minio,brendanashworth/minio,harshavardhana/minio,krishnasrinivas/minio,krisis/minio,hackintoshrao/minio,harshavardhana/minio,fwessels/minio,minio/minio,hackintoshrao/minio,koolhead17/minio,rushenn/minio,aead/minio,aead/minio,hackintoshrao/minio,rushenn/minio,krishnasrinivas/minio,krisis/minio,aead/minio,abperiasamy/minio,abperiasamy/minio,harshavardhana/minio,brendanashworth/minio,luomeiqin/minio,krishnasrinivas/minio-daily,dutchcoders/minio,luomeiqin/minio,rushenn/minio,luomeiqin/minio,krishnasrinivas/minio,aead/minio,fwessels/minio,aead/minio,hackintoshrao/minio,krishnasrinivas/minio-daily,vadmeste/minio,NitishT/minio,jimjag/minio,harshavardhana/minio,brendanashworth/minio,abperiasamy/minio,dutchcoders/minio,NitishT/minio,NitishT/minio,dvstate/minio,mf-00/newgo,mf-00/newgo,koolhead17/minio,krishnasrinivas/minio,NitishT/minio,abperiasamy/minio,jimjag/minio,dvstate/minio,alexellis/minio,balamurugana/minio,harshavardhana/minio,dvstate/minio,dvstate/minio,luomeiqin/minio,alexellis/minio,fwessels/minio,harshavardhana/minio,harshavardhana/minio,rushenn/minio,harshavardhana/minio,dutchcoders/minio,aead/minio