interface changes for Hasher, messagedigest is now parameter instead of making one method for each algorithm. StringReader renamed to StringExtractor to avoid confusion with JavaSE StringReader