Improve reduce() performance with generic iterators
Fix ambiguous member template warning with clang
Add test creating a std::future for an event object
Add print_vector example
Remove enqueue_1d_range_kernel() overload with no local work-size
Remove default local_work_size argument for enqueue_nd_range_kernel()
Remove explicit call to finish() in command_queue destructor

This removes the explicit call to finish() in the destructor
for the command_queue class.

The clFinish() function will be called automatically by the
clReleaseCommandQueue() function once the reference count for
the command queue drops to zero.
Remove read/write buffer convenience overloads in command_queue
Remove cl_int return values from command_queue

This updates the methods in command_queue to either return void
(for synchronous operations) or an event object (for asynchronous
operations). The caller will be notified of OpenCL errors via an
exception being thrown.
Fix spelling error in enqueue_native_kernel() documentation
Add documentation for the enqueue_1d_range_kernel() method
Change mersenne_twister::seed() to take a command_queue
Remove unused context variable in random_fill()
Add perf_erase_remove benchmark
Optimize vector<T>::erase() when last equals end()
Add discard_iterator class
Add discard() method to mersenne_twister_engine
Rename mersenne_twister_engine::fill() to generate()
Add mersenne_twister_engine::generate() overload with transform
Add documentation for the random number generator classes