Apply focus before filtering for platform/environment support.

Focus is no longer ignored in cases where focused tests wouldn't run--now, no tests run. This makes it easier to reason about what will happen when you focus a test: no unfocused tests will run.
It's a consequence of tagging determining the default value of `+supportsCurrentEnvironment`, and that scenario's tested in `testAFocusedTestMustSupportTheCurrentEnvironmentInOrderToBeRun`.