Merge partial implementation of standards proposal N3960

This is a request to merge a partial implementation of standards proposal N3960, adding parallel functionality to the standard template library. The reason for this partial merge is to offer additional performance enhancing tools to the master branch from the currently supported functions. As of the n3960 latest commit, the following functions are implemented:

* `copy` , `copy_if` , `copy_n`
* `move`
* `count`, `count_if`
* `reduce` , `transform`
* `fill`, `fill_n`
* `for_each`, `for_each_n`
* `swap_ranges`

This set of functions will be ready to be used and implemented into currently existing code to improve performance. Any issues that arise from the use of these functions can be used to improve future implementations and let us know what, if anything, we should devote more time to.
Currently `is_parallel_execution_policy<int>` is `true_`, which is wrong. There is an specialization for the sequential execution policy for this trait that is `false_`, so changing the default would give this traits the semantics of "everything that is an execution policy is a parallel execution policy, unless it's a sequential execution policy".