sam4l::flashcalw: Improve diagnostics
sam4l::flashcalw: Improve diagnostics

Return FAIL when a read/write is requested before `configure()` is
called.  This should not change behavior where `configure()` is
properly called before other operations.

Previously behavior when `configure()` has not been called:

- `read_page()`: SUCCESS
- `write_page()`: EBUSY

Both cases are dangerous because the driver is not being used as
intended (the intended setup in `configure()` is omitted and the state
machine is incorrectly initialized), and the second case makes
debugging difficult because EBUSY can be returned by other layers
(e.g. `capsules::nonvolatile_to_pages`).

This commit also adds the call to `configure()` in some example-use
code in comments atop `nonvolatile_to_pages.rs`, so copy-paste users
will have a better chance of getting it right.

The `examples/tests/nonvolatile_storage` app has been expanded to
tickle the failure modes of an unconfigured flash controller.

tock/libtock-c,tock/libtock-c,tock/libtock-c