SI-8129 Coherency for `{Any, Object}#==`; typer.context / infer.context

- Make our ficticious == and != methods line up for overriding checks
  - Eliminate a major source of puzzling behaviour by ensuring Inferencer
    and Typer agree on what the current Context is.

Review by @adriaanm, @xeno-by

These changes are independent, I can break them up if desired.