simplify util.ErrorList by eliminating errorListInternal

This refactor makes ErrorList introspectable as per Issue 1605 https://github.com/GoogleCloudPlatform/kubernetes/issues/1605. It passes make check. 
If we're going to do this, we should get rid of the public ErrorList type entirely.  As it stands, this change makes ErrorList implement "error", which is explicitly what the comment above says we DON'T want to do.

    return ErrorList{} => a non-nil error

Instead, leave the internal type as a typedef, and make your free-function return that, if the input is not len(0).