Initial code for SHA1

This code will certainly not work.  It has been copied from Goplat's
implementation at http://www.cemetech.net/projects/uti/viewtopic.php?t=9582&start=0
and modified to work with sass.  However, it assumes that it can SMC,
which it cannot.
Convert all SHA1 code to use a dynamically allocated state
Fix oversight in SHA1

IX is already in use; we can't keep using it for two different things!
Numerous cleanups and optimizations for SHA1 code
Optimize SHA1 operations

These optimizations are Goplat's, from
http://www.cemetech.net/projects/uti/viewtopic.php?t=9582&start=0.
Change code style from $ to 0x
Add jump table entries for SHA1 routines
A couple minor optimizations

Mainly, we know Z is reset because the malloc succeeded.  Also,
we don't have to copy the whole memblock, only the nonzero parts.
Merge branch 'master' into sha1

We need the calloc function there.
Remove empty space from SHA1 memblock description
Implement SHA1 unit tests

These aren't entirely final; we need to save registers in the called
code.  Also, SHA1 doesn't pass (yet).
Fix typo in SHA1 code

I mistyped this when translating it.  This was the source of the memory
corruption I think.
Revert "Fix typo in SHA1 code"

This reverts commit e888aac7345a1fcb090fea96b279dab3e2d4bd37.
Fix numerous SHA1 bugs

It's still not working.  But it's closer than it was.  It's getting
the wrong hash, but nothing crashes.
Add minor optimizations in SHA1 code

Usually, these sorts of optimizations just do things in a slightly
different order and are able to save an instruction or two.
Fix nasty, subtle flag error in SHA1 code

The dynamic-memory rewrite altered flags (most notably the CA flag) that
the original algorithm didn't touch.  The basic SHA1 algorithm now works.

djnz has been changed to dec \ jp because it is now out of range.
Document externally-exposed functions

Namely sha1AddByte and sha1Pad
Cause externally-exposed SHA1 routines to preserve variables
Implement sha1AddRange

Also externally expose it and modify the unit test to use this
routine.
Remove forgotten line from SHA1 tests