fail!() used to require owned strings but can handle static strings now. Also, it can pass its arguments to fmt!() on its own, no need for the caller to call fmt!() itself.
for
Mostly just tests (that are ignored); install command is still stubbed out.