add support for chainable matchers (commits condensed)

I condensed the commits from [this pull request](https://github.com/pivotal/jasmine/pull/189) down into 4, and gave lengthier commit messages.