Fix Smart::Comments enhancer

This commit has the following changes.

* Do not apply to all modules use warnings.
  By this behavior, it causes a problem in the module that
  contains `### [*NOT* Smart::Comments syntax]`.
  To enable Smart::Comments, use Slack::Util or use Slack qw(...)
* Add a version check before patching.
* Time::Piece one-liner can also be applied to a subclass.
* Fix the output encoding.
* Some fixes.
Add support for table output to Smart::Comments
Fix to ignore keyword when appears on hash key.
Change to have `prefix` instead of `appname`
Change to be able to define view of app