Replacement for Step that checks the for byte code, and if none exists, then PropertyChainForCompiledIn is used. Also makes an effort to verify that the params are in the correct order and the types are compatible.