largely shuffling around and organizing private impl methods versus private anonymous methods
addParamCallbackImpl that takes Options<T>. Requires storing the optional val's as they are called so they can be re-added