Entity field access condition 2281113b

Updated version of my previous patch;  I've changed branches due to some very bad problems with "git rebase".

I'm aware I have two commits that appear here.  That's the problem -- I can't get git to go lower without pulling in commits I don't own.  If you folks can tell me how to fix this, much thanks.

The patch creates the plugin and test for the issue.
Please add some line-breaks in this methods to separate the logical blocks. It's kinda hard to read :)