doesnt check_members returns a boolean?
If not, why not? Should be unified with the supports_*** stuff