Minor typo.
Regenerate the hash before checking the share diff in hashtest().
Further consolidate the hash regeneration between sha and scrypt doing it only once and always checking the share diff for both before submission.
Make set_work_target a function to set a specified char as target for use elsewhere.
Use a discrete device target for scrypt that dynamically changes to ensure we still report a work utility even if no shares are submitted such as in solo mining.
Update NEWS.
Bump version to 3.1.1