Tweaks to explicit and implicit call protocol logic in JIT.

* When no explicit call protocol, we must dispatch through
  DynamicMethod instead of directly via the handle. We need to
  work towards all frame/scope logic being explicit, I believe.
* Set visibility to public, rather than method's visibility. I
  was getting singleton methods showing up as private for no
  obvious reason other than reusing the current method's
  visibility. Need to discuss how to do this right.
* Remove doubled-up protocol in InterpretedIRMethod's dispatch to
  CompileIRMethod.
Disable DCE for now. #1786