v0.10.2: make test targets own the local stack lifecycle

- Every make test* target now owns the local stack lifecycle: it resets and
  starts the installer-equivalent development stack before its suite and stops
  it on success, failure, or interruption, through the new
  scripts/test-local-lifecycle.sh wrapper. Tests no longer need a manual
  make run beforehand and never leave the local Compose project running.
  test-installed no longer depends on the run target; the wrapper handles
  startup and teardown.