Add reservoir sampling methods and tests
Changed reservoir sampling to work with java.util.Random which is serializable