Enum.sample using reservoir sampling
guard for Enum.sample/2
eliminate count>=n corner case in Enum.sample/2

plus more tests
don't walk the collection on 0-sized Enum.sample

Previously the code was correctly returning empty sample
when requested Enum.sample/2 count was zero, but the input
collection was traversed for no reason.
test Enum.sample with different random seeds
fix Enum.sample docs

* sample/2 doc was empty
* clarify impl notes, add link to algorithm
* use :os.timestamp in examples of setting the seed
Enum.sample: use Tuple.duplicate for sample init
Enum.sample/2: dedup code in reducer branches
Introduce `StringIO.flush/1` function
Support mix help --search PATTERN
Make the parameter more explicit
Fix a couple of minor typos in docstrings
Merge pull request #2813 from citizenparker/master

Fix a couple of minor typos in docstrings
No longer inline binary expressions in EEx

String.Chars is now always inlined by the compiler.

Closes #2815
fix typo
Merge pull request #2816 from jw2013/typo

fix typos
Fix missing concatenation operator.
Fix test for mix deps.clean.
Merge pull request #2819 from benjamintanweihao/patch-3

Fix missing concatenation operator.
set null prompt function in dumbterm mode