Last operator

Equivalent to lastAsync in Rx.Net.
Fix behavior of BlockingObservable.last

It now throws an IllegalArgumentException instead of returning null if no elements are emitted.

This is based on feedback from @headinthebox confirming this expected behavior:

var xs = Observable.Range(1,0);                       		// empty sequence
int x = xs.Last().Dump();                             		// throws “sequence contains no elements”       RxJava => BlockingObservable.last()
IObservable<int> ys = xs.TakeLast(1).Dump();          // OnCompleted()                                                RxJava => Observable.takeLast(1)
IObservable<int> zs = xs.LastAsync().Dump();          // OnError(“sequence contains no elements”)    RxJava => Observable.last()
Merge pull request #470 from benjchristensen/operator-last

Operator: Last
Fix unit test after last() changed behavior
Add and clarify unit tests in map
Merge pull request #471 from benjchristensen/error-handling

Unit Test Tweaks
BugFix: Unsubscribing does not work when using subscribeOn(Schedulers.newThread())

I believe this fixes https://github.com/Netflix/RxJava/issues/431
Merge pull request #472 from benjchristensen/issue-431-newThreadUnsubscribe

BugFix: Issue 431 Unsubscribe with Schedulers.newThread
Fix non-deterministic unit test

- the latch was before onError is called
- use BlockingObservable and expect the IllegalArgumentException to be thrown
Merge pull request #473 from benjchristensen/fix-nondeterministic-unit-test

Fix non-deterministic unit test
BugFix: Reduce an empty observable

This fixes issue https://github.com/Netflix/RxJava/issues/423

The fix is based on this comment by @headinthebox: https://github.com/Netflix/RxJava/issues/423#issuecomment-27642532
Merge pull request #474 from benjchristensen/issue-423-reduce-empty-observable

BugFix: Reduce an empty observable
Additional unit test for reduce
Merge pull request #475 from benjchristensen/issue-423-reduce-empty-observable

Additional unit test for reduce
Don't emit null onComplete when no onNext received
Merge pull request #476 from benjchristensen/bugfix-asyncsubject-empty

Don't emit null onComplete when no onNext received in AsyncSubject
CompositeSubscription

- remove now also unsubscribes the removed subscription
- added clear method
Unsubscribe Idempotence Test
Merge pull request #477 from benjchristensen/subscription-bugfixes

CompositeSubscription bugfixes
[Gradle Release Plugin] - pre tag commit:  '0.14.9'.