Ungets a single byte from a file. Pushed-back bytes are not written to the file, only made available for
subsequent reads, in reverse order.
The number of pushbacks depends on the backend. The standard I/O backend only guarantees a single
pushback; this depends on the libc implementation.
For backends that follow the standard behavior, the pushback buffer will be cleared after any seeking or
writing; also calls to al_fseek(3alleg5) and al_ftell(3alleg5) are relative to the number of pushbacks.
If a pushback causes the position to become negative, the behavior of al_fseek(3alleg5) and
al_ftell(3alleg5) are undefined.