Make Flag{} be implementable outside the cli package

getName() prevents consumers of this library to have their own custom flag types.
If this wasn't intentional it seems to have been a consequence of this issue,
https://code.google.com/p/go/issues/detail?id=7886