Fixed bug in special buffers handling.

`cl-letf` incorrectly handles cases where the place was not initially
defined. The new strategy to store/load special buffers is now more in
line with `desktop`'s way of doing things, and relies only on plain
functions.