To do merge and groupby on host(CPU). (Ordered matching)

By using: thrust::merge() and thrust::reduce_by_key().

Now it is a header file that is not included and until has no affect.


Added functions:
 - merge_by_key() - Merge hashes and values that already have been grouped/reduced by key.
 - reduce_merged_by_key() - Reduce values that already has been merged by key

Parameters of templates:
 - get_hashkeys - In merge_by_key() and educe_merged_by_key() need use template parameter get_hashkeys - as true only once for one merging, for optimize. Because for each column merging and reducing hashkeys result(host_vec_keyhash_merged) are identical.
 - T_hash_vec - must be thrust::host_vector<uint64_t>
 - T_val_vec - must be thrust::host_vector<Type_field>, where Type_field is a type of field :)

Postfixes in parameters of functions:
 - _seg1 and _seg2 - vectors from different segments.