Improve optional argument handling in public methods

This treats Express `locals` function objects as `options` and not `callback` params to the method being invoked.

Closes #27