updated device_abilities to return components by name