move code quality tests to xt/

xt/ is the preferred place for "extra tests" that should not be run by
users and therefore potentially impact the installability of the dist.

Additionally, since they are only run on-demand, we can assume the
person running it has installed the modules they require.

Fixes #100938
whitespace and consistent code formatting

This commit removes all trailing whitespace, converts all tabs to 4
spaces (reindenting code as necessary), and ensures space consistency.

Fixes #100935
update the manifest

This is one of the build artifacts that should probably be better
generated by Dist::Zilla
update Makefile.PL with more modern EUMM features

Now we can specify things like BUILD_REQUIRES, CONFIGURE_REQUIRES, and
TEST_REQUIRES, so we can make test-only requirements that get handled
correctly.
use new Test::More features

subtest and done_testing make tests cleaner and easier to write. It does
require Test::More 0.99 though.

Fixes #100937