Fixes for 'faulterl'-style fault injection

This is a rebased and squashed version of the `slf-faulterl-introduction` branch.  The squashes have attempted to use roughly one commit for:

* Adding faulterl
* Faulterl usage example
* Fix some lock problems
* Fix write problems
* Fix merge problems
* Avoid a few spammy log messages when testing with faulterl.