Add method `-includePrevious:` for combining latest and previous values

Discussed in #387, so here is the working implementation.

This allows you to access previous values of the stream. Example:

```objc
[[[RACAble(self, value)
   includePrevious:4] // the tuple will have 5 values
   skip:4] // skip until we have at least 5 recent values, no nils
   map:^id(RACTuple *tuple) {
       // calculate average
       return [tuple.allObjects valueForKeyPath:@"@avg.self"];
   }];
```