Fix extra semicolon warning in interop/eigen/core.hpp
Add link to examples directory in README
Improve accumulate() performance

This improves the performance for the accumulate() algorithm
for types/operations that can be performed with reduce().
Change vector constructors to take queue argument

This changes the vector<T> constructors which copy or initialize
data to take a queue argument used for performing the operations.

Previously they just took a context argument used to initialize the
buffer and then created a new command queue to use. This improves
performance by not requiring a new command queue and also fixes issues
when performing operations on a different command queue while the
vector was still being initialized.
Add support for host iterators to sort()
Add tests for generate() with pair<> and tuple<>
Refactor function handling in lambda expressions