Changes here are:
- Split out string format module sub-test to a separate test file, so it
can be skipped on targets that don't have str% capabilities.
- Print the whole type instead of `.__name__` to support targets that don't
have `.__name__` enabled (this still tests the same thing).
- Print `RuntimeError` exception message to be sure the correct exception
is being raised.
This test now runs on unix and zephyr minimal configurations.
Signed-off-by: Damien George <damien@micropython.org>