Support testing with multiple features

Allow `Feature.run_with_activated` and `Feature.run_with_deactivated` accept a list of features rather than just one.