This prevents it from being used in the foot-gunny way described in
comment 0.
This in turn allows us to add a constructor for temporary callables.
Turns out we only had test usages of non-temporary FunctionRefs, so this
is much simpler than the initial approach I considered.
Fix the tests to keep compiling, and add a test for the new constructor.
Differential Revision: https://phabricator.services.mozilla.com/D200157