Remove unnecessary includes from transform_reduce

This removes a couple of unnecessary includes from the
transform_reduce.hpp header file.
Fix indexing bug in list_devices example

This fixes an indexing bug in the list_devices example in
which the information would only be printed for the first
device on a platform.
Rename kernel::num_args() method to arity()

This renames the kernel::num_args() method to arity().
Remove simple_histogram from flat_map test

This removes the inefficent simple_histogram test-case from
the flat_map test-suite.
Add scalar<T> container

This adds a new scalar<T> "container" which stores a single
value in a memory buffer. This simplifies memory handling in
algorithms which read and write a single value.