Fast, pure and practical MD5 implementation
