fallback to testing key names; correctly put 'constructor', 'prototype', '__proto' at the bottom