Reimplement the 'single' operator
Add first, last, single to rxjava-scala
Throw NoSuchElementException in the first, last and single operators when the Observable is empty
Rename OperationFirstOrDefaultTest and OperationLastTest to OperatorFirstOrDefaultTest and OperatorLastTest
Fix clojure test
Fix tests in rxjava-math
Merge branch 'master' into single
Fix typos
Reimplement "SkipLast" operator
Rename OperationSkipLast to OperatorSkipLast
Reimplement the "SkipLast" operator with time
Replace LinkedList with ArrayDeque
Merge branch 'single' of git://github.com/zsxwing/RxJava into merge-967

Conflicts:
	rxjava-core/src/main/java/rx/Observable.java
	rxjava-core/src/main/java/rx/operators/OperationSingle.java
	rxjava-core/src/test/java/rx/operators/OperatorLastTest.java
Merge pull request #1051 from benjchristensen/merge-967

Manual Merge #967
Merge pull request #1050 from zsxwing/skip-last

Reimplement the 'SkipLast' operator
ComputationScheduler -> EventLoopsScheduler

- This implementation is used by Schedulers.computation() but is actually a pool of event loops, so renaming.
Restoring parallel() to using Schedulers.computation()

See https://github.com/Netflix/RxJava/issues/713 for background on this.
Merge pull request #1052 from benjchristensen/computation-scheduler

Scheduler Cleanup
Remove deprecated rx.util.functions.*

- organized imports and fixed few places that were still accidentally using the old package
Remove deprecated methods/classes from rxjava-core

Cleanup on path to 1.0: https://github.com/Netflix/RxJava/issues/1001#issuecomment-40888251