add support for setting feature availability

when a feature is unavailable, it is listed, but cannot be selected for
installation.
when the next button becomes enabled, focus it

avoids the issue where the cancel button grabs focus when it's currently
the only button enabled, and retains focus even after the next button is
enabled.