Added use of @functools.wraps() in our decorators.
Added use of @functools.wraps() in our decorators.

This updates a wrapper function to look like the wrapped function.

This partially addresses Issue #271 where using multiple decorators can break help on subcommands, depending on the order in which the decorators are applied.

This PR doesn't actually fix anything in and of itself.  But it encourages the usage of @functools.wraps().  If other decorators use this, then there shouldn't be any problem.  Of course, we can't control how 3rd-party libraries implement decorators.  But we can at least be part of the solution instead of part of the problem.

python-cmd2/cmd2,python-cmd2/cmd2