Add reduce
Add examples for fancy iterators
Merge branch 'thrust'