Refactoring the signal to be used with threads

Signal should not be a part of the library but the main program.
Changing the name of signal to be signals is more inline with threads

Makefile is updated to reflect this change

There was a bug in Controller->setContainer, where it was refering the
variable from the class rather than the parameter
Thread signal handling

Forevery SIGTERM or SIGHUP signaled, the thread is sent a SIGALRM to
wake up usleeped thread, So there is not a delay at the end of a kill
Recursive loop

Check the signal type is different to SIGALRM before signaling threads
otherwise the signalling will recursively never end
Removed Magic numbers and locked globals

EXIT and RELOAD now use proper locks, And added macro definition for
server ticks and buffer size
Makefile cleanups

Made sure that the make release performs correctly, and -g -DDEBUG is
used in one place and only in debugging