You added more things than the original suggestion covered - please try to avoid that, it confuses the purpose of the suggestion and makes it harder to track, any different ideas to the original post should be posted separately. That suggestion will be treated as referring to the original description only.
FYI I can't see any reason to support getSupportedAPIs(), since you can't do anything with them from events. If there are features which are only sometimes supported, we'd add separate conditions to cover them, but AFAIK there are no such features yet.