Added HashGen.
TaskURL now attempts to fix the URL it's being fed.
Added IByteWriter.flush().