Implement concurrency routines: mutexes and condition vars

The acquireMutex routine must emulate an atomic set-and-check
instruction, since the z80 lacks it.  It disables interrupts
and restores them when done.

Misbehaving threads who attempt to unlock a mutex they do not own
will be brutally killed!
condInit: Use calloc
derp, forgot element size specifier
Be nicer, return error code when unlocking mutex

Applications are very likely to crash if they unlock a mutex they
do not own!
Reset Z when returning error
Merge pull request #145 from KnightOS/concurrency

Implement concurrency routines