Add `buffer()` to `StdinLock` structure

The structure BufReader provides the method buffer() and StdinLock uses BufReader, so StdinLock can provides buffer() too for the user.

AFAIK stdin is unbuffered. So given that there is no buffer to return, what exactly should such a StdinLock::buffer() method return?

It contains a BufReader (and StdinLock implements BufRead).