Parallelize outer loops in HPX backend

@hkaiser, @sithhell: this makes two changes:
1. Replaces serial for loops with hpx::parallel::for_each algorithms in
   all backend operations.
2. Replaces the combination of outer serial for loop and mutex with
   hpx::parallel::transform_reduce in inner_product_impl.

With these, (and probably with dc3968772) HPX finally manages to get on
par with OpenMP in terms of performance: the solution step for 200^3
test problem takes 25.568 sec with HPX and 25.513 with OpenMP (4 cores).

Here is the output of the test run with counters printed:
https://gist.github.com/ddemidov/e6ad5192f1ba54af1ce5