Function methods should throw an error given non-function arguments

Per #1576