Recursive accessor calls now emit warning and block call from invalid
contexts. Added comprehensive test