Instance.get: should only be recursive if it is an instance

Problem described on issue #2253.

This PR contains test unit and needed patches.

Not ready for merge yet.
Manual `.set` maybe, i had some doubts if i should place it here too, i wrote here too because i don't know how sequelize core works entirely... Should i remove it?