Allow creating iterators with no arguments.

Certain algoritms (`std::minmax_element`, for example) create local
iterator objects with no constructor arguments. Setting `source` to
`nullptr` by default allows these algorithms to work correctly.
Very basic test for white noise generator.
Seed random numbers.
Check that white noise mean value is close to 0.
Relaxed constrains on white noise mean.
Basic tests for pink noise generation.