src/sage/features: attempt to load gap packages during feature tests
While testing for a GAP package, we now try to load the package
first. Without this, testing of optional GAP packages would not be
possible: most "extra" GAP packages are not loaded automatically, so
if the feature test didn't load them, they would remain unloaded (and
hence unavailable) during test runs.
This new behavior also allows us to cache these feature tests again.