Add BoolTFlag type

Compared to BoolFlag type, BoolTFlag treats 'true' as the default value
for the flag.

Without it, we have to use --no-action flag if we set the action is done
in default. But sometimes it is bad to maintain flags with negative meanings.
And it will be painful if we change the default value for the flag.

As this implementation, it keeps all existing functionality. So it
is compatible with old versions.
Merge pull request #70 from unihorn/27

Add BoolTFlag type
fix(context): copy StringSlice Flag correctly
Merge pull request #73 from unihorn/43

fix(context): copy StringSlice Flag correctly
Make Command accessible from Context
Customizable command not found function
merging code
remove quotes for empty StringFlags
Made bash completion command optional; still need to update documentation
Added some documentation and bash integration code
Adding sample test
Merge pull request #79 from rschmukler/master

remove quotes for empty StringFlags
Merge pull request #78 from zenoss/feature/bash-completion

Bash completion
Add SkipFlagParsing option to Command
More consistent implementation of recursive subcommands
Added unit tests
Updated readme
dolling it up
Added Before method to command.  If set, or if command.Subcommands is set, then the command is treated as a recursive subcommand
Make StringSliceFlag usage text consistent

This fixes StringSliceFlag default usage text to be consistent with
IntegerSliceFlag.

Before:

   -f []	`-f option -f option` port forwarding rules

After:

   -f '-f option -f option'	port forwarding rules

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>