Optimized hashes a bit

Since all of the hash algorithms are called once as "throwaways" (not
calling update, or being saved beyond the calling line), the internals
of each algorithm were moved around so the algorithms would run on all
of the data at once, rather than running on the data in blocks.
Quick typo fix
bugfix TDES::decrypt()
fix typo.
fix #1
Small fix

Missed a condition for commandline
fix #5 IDEA probrem
Merge pull request #2 from mugwort-rc/bugfix-tdes-decrypt

bugfix TDES::decrypt()
Merge pull request #3 from mugwort-rc/fix-typo

fix typo.
Merge pull request #4 from mugwort-rc/fix-issue1

fix #1 SHA512 probrem
Merge pull request #7 from mugwort-rc/fix-issue5

fix #5 IDEA probrem
Add unittest.
Add travis.yaml
Update .travis.yml
Update .travis.yml; libgmp-dev
Merge pull request #8 from mugwort-rc/unittest

Add unittest.
Add RSATest.
fix the RFC side's typo.
Merge pull request #9 from mugwort-rc/rsa-test

fix the sha224WithRSAEncryption probrem.
fix RSA_verify.