Add Watch Expression Command

Usage: watch [EXPRESSION]
       watch
       watch --delete [INDEX]

Evaluate an expression after every command and display it when its value
changes.

    -d, --delete      Delete the watch expression with the given index. If
                      no index is given; clear all watch expressions.
    -l, --list        Show all current watch expressions and their values.
                      Calling watch with no expressions or options will
                      also show the watch expressions.

The watch command will use Pry's command `state` to keep track of watched
expressions.
delete require 'rb-readline' from lib/pry.rb . When use gem rb-readline, require 'readline' not 'rb-readline'.
Add 'public' to description of :M option in ls command.
pass an empty prompt to Readline.readline() from Pry::SimplePager.

fixes #1048.
Merge pull request #1062 from yui-knk/change-require-readline

delete require 'rb-readline' from lib/pry.rb . When use gem rb-readline,...
Merge pull request #1063 from yui-knk/change-ls-option-description

Add 'public' to description of :M option in ls command.
Add 'group should not be changed' to Pry::Command.group .
Merge pull request #1067 from yui-knk/add-comment-on-group

Add 'group should not be changed' to Pry::Command.group .
Remove helpers for spec. Helpers for spec and specs for helper are mixed in spec/helpers, so remove helpers to spec/spec_helpers.
Merge pull request #1068 from yui-knk/refactor-spec-helpers

Remove helpers for spec. Helpers for spec and specs for helper are mixed...
Refactor lib/pry/method.rb(Pry::Method.all_from_obj).
Fix to Pry::Command::Ls.error_list. Now non_mod_interrogatee is always false, so fix it.
Add spec to ls command. When 'ls -M instance' is called, exception should be raised.
change private_method_color and protected_method_color in config.ls to match 'ls --help'.
Fix 'ls -g' shows colored results. If Ruby is post 1.9.2 global_variables returns Array of symbol. So change them to string to compare BUILTIN_GLOBALS or PSEUDO_GLOBALS.
Typo in lib/pry/commands/cd.rb
Merge pull request #1075 from yui-knk/typo-cd-command

Typo in lib/pry/commands/cd.rb
Merge pull request #1072 from yui-knk/fix-ls-errorlist

Fix to Pry::Command::Ls.error_list. Now non_mod_interrogatee is always f...
Merge pull request #1071 from yui-knk/refactor-method

Refactor lib/pry/method.rb(Pry::Method.all_from_obj).
Refactor lib/pry/commands/ls/globals.rb format method.