Port Poly1305 Mac implementation and tests from bc-java.

Poly1305 Mac implementation and tests from bc-java.