Added initialization to SyscallError

The initialization was added to allow initialize the error when the
error code is not available from error (i.e. when using threads, errno
is not modified...).
Added a bit of documentation to the class
Added a basic error reporting

A basic exception-basec error reporting was added to the Thread class.
This error reporting is not goo enough because it does not notify
correcty the cause of the error. It has to be improved.