Add ability to use wrapper functions for inputs

This adds the ability to use wrapper functions for inputs. This is useful in cases where the raw value from an input needs to be massaged before passing it to the next step. See the new demo for a use example.