blk: update checksum calculation algorithm

- Update the checksum handling to handle BE systems.
- Improve the way the chk-sums are calculated.
- Adjust the checksum unittest to be endianess aware.

Initial version by @mdalecki
Merge pull request #57 from tomaszkapela/pmemblk_checksum_update

blk: update checksum calculation algorithm
vmem: fix race condition in chunk_alloc_default()

"pool->arenas" has to be protected with "pool->arenas_lock".
Move the call to chunk_recycle() outside chunk_alloc_core(),
because the lock is needed only when (pool->pool_id == 0).