fix(dist/hint): don't throw in `getFunctionNames()` when `str` is not a string

Closes #166, Closes #172, Closes #174, Closes #177

<sub>(@btford: you'll have probably spotted that by now, but yeah...)</sub>