Add support for BasicObjects to `ls` [Fixes #984]
Move __binding__ onto BasicObject

This paves the way for proper BasicObject support throughout pry.
Fix specs with spurious newlines
Remove guard

It breaks travis as it transitively depends on celluloid which has
stringent ruby version requirements.
Replace BasicObject#__binding__ with one that works
Skip BasicObject on archaic rubies
Fix ruby 1.8.7 harder
Don't care about failures on unreleased jruby
spec/pry_output_spec.rb: test colour leaks for Object literals

This ensures that CodeRay does not leak colours.
For more information see the following commit:

c544c1d69974e3505175d25fab69bb9e74674965
lib/pry.rb: keep randomness predictable!

Still a horrible hack, but at least it fixes issue
https://github.com/pry/pry/issues/988 (In PRY, srand() and rand()
results differs from IRB's or command line Ruby's).

I also would like to mention that the `result` variable also contains
some extra "\e[0m" sequences; it also messes Pry Theme up (singleton
objects) a bit.
Bump CodeRay dependency to 1.1.0
Refactor Pager and subclasses to support streaming
Stream colorized inspect output into pagers
Track output size more accurately
Fix inspect fallback for weird objects
Fix a couple of SimplePager bugs

* Exiting with q was broken by d703320e38397c1b3bf9cb3fc4389f9c741c448b.

* We were only removing color codes in the case where the input string
  ends with a newline, which means we were overestimating the length of
  strings that don't end with newlines. After fixing that, SimplePager
  can accurately page through the inspect output for _pry_.
Raise StopPaging when user quits pager
Simplify pager selection, make base class a null pager
Make Pry::Pager a module
Rescue StopPaging in Pry.page