Add hashChannel for hash partitioned pages

For pages that are hash partitioned, the hash is computed for every exchange. This is a compute intensive operation. Store the hash in an additional channel in the page to avoid recomputing it.