Use typeof insted of instanceof
Be less restrictive with displayName
Be more carefulwhen naming function. see troopjs/troopjs-core#63
update displayName