flagutil: Added BoolFunc and StringFunc

These are two new flag types which take a function to
be executed when the flag value is changed.
Merge branch 'master' of https://github.com/cookieo9/go-misc into newflagalias
flagutil: updated and documented *Func

NewStringFunc and NewBoolFunc have been removed in favor of simply
converting an appropriate func() into a {Bool/String}Function.

Updated the logic for BoolFunction.Set() to accept any case of:
 - "true", "t", or "1" for true
 - "false", "f", or "0" for false

This should make things easier for those who like to pass values to all
their flags, and also for those using go 1, where external boolean flags
are not supported.

Also documented these exported types and functions.
Merge pull request #4 from cookieo9/newflagalias

flagutil: Added BoolFunc and StringFunc types and functions