Move Pack_As_LE and Sip_Round into SipHash.PRF

This seems help the compiler for the inlining.

FIXME
-----

There are three use cases:
1. hash the whole data in one pass (Block mode).
2. hash the data incrementally (Streaming mode), one byte at time.
3. hash the data incrementally (Streaming mode), by chunk (of 4096 bytes for
   example).The chunks' sizes can be variable.

This optimization improve the speed for the use case 2, but has a very negative
effect on the two others.

Time used to process ~440MiB of data with SipHash-2-4
-----------+------------+------------
| Use case | Before (s) | After (s) |
-----------+------------+------------
|    1     |   1.191    |   5.156   |
|    2     |   1.303    |   1.148   |
|    3     |   1.200    |   4.791   |
-------------------------------------
Optimize Update(Chunk).

Rewrite Update(Chunk) to avoid as much as possible the multiple calls of
Update(Byte).
This optimization corrects one of the negative effect of the previous commit on
the use case 3

Time used to process ~440MiB of data with SipHash-2-4
-----------+------------+------------
| Use case | Before (s) | After (s) |
-----------+------------+------------
|    1     |   5.156    |   5.090   |
|    2     |   1.148    |   1.134   |
|    3     |   4.791    |   0.487   |
-------------------------------------

As a reminder, the use case 3 is: hash the data incrementally (Streaming mode),
by chunk (of 4096 bytes for example).The chunks' sizes can be variable.
Update tests to improve the line coverage

For src/siphash-prf.adb
Before: 95.88%
After:  100%
Fix a bug in Update(Chunk)

If there is not enough bytes in the input to finish the current block, just
consume all the input and stop.
Update comments and fix a typo
Optimize Hash(Input, Key).

Use Update(Chunk) instead of calling repeatedly Update(Byte).
This optimization corrects the negative effect of the
commit 1e8c7e6dab7692e281d73d14067d3f7ad46beb4d on the use case 1.

Time used to process ~440MiB of data with SipHash-2-4
-----------+------------+------------
| Use case | Before (s) | After (s) |
-----------+------------+------------
|    1     |   5.090    |   0.437   |
|    2     |   1.134    |   1.127   |
|    3     |   0.487    |   0.466   |
-------------------------------------

As a reminder, the use case 1 is: hash the whole data in one pass (Block mode).
Update version number.
Merge branch 'develop'