SVC: Implemented Semaphores

This probably still needs a little more testing, but at least the behavior is consistent with hardware in the tests i've performed (See here: https://github.com/Subv/3ds-homebrew/blob/master/semaphore/source/main.cpp )
Can you split this line? It's easy to miss the double-assignment.