Add error handling
Currently errors are not handled. We could add error handling by returning error codes.
A proposition would be to have these two categories (make an enum):
We may need them in case of failed memory allocation (malloc or realloc), trying to pop/peek an empty stack, trying to manipulate a destroyed stack, ...