在 irb 和 普通 ruby 脚本中都使用 ap 替代 pp.
使用 if else 替换 && ||, 这对于 source 来说, 还是有意义的. 因为 source 可能返回失败.
添加了 mixin 方法. 用来查看一个对象混入/扩展了那些模块
Updated: to make some modified to compatible with MacOS X.